When we create an iterator binding in your current page (or panel's) UI model in the ADF Design Time environment, we currently default the range size to 10. This turns out to be ok if you are using that iterator binding with a range binding for rendering a table display. However, if you are using that iterator binding as the source of a list binding -- to show the valid choices in a dropdown list, for example -- then having a range size of 10 is not what you want.
When you use a list binding, the related iterator binding that drives the choices in the list should have a range size of -1 (negative one) so that all rows get retrieved and shown in the list.
I ran into this little gotcha while doing an ADF seminar recently, and initially couldn't understand why some of my choices weren't appearing the list. Then, it dawned on me to count the list entries and there were only 10 instead of 15 that I was expecting. That reminded me about the default 10 range size, and of course, setting the range size for that iterator to -1 fixed the problem.
We'll try to do something smarter in the 10.1.3 release for detecting how an iterator binding is getting used and default the range size more intelligently as a function of this. In the meantime, forewarned is forearmed about this little gotcha...
1:46:48 PM
|