Thanks Igor for your reply. So, what do you suggest I should do: 1. After making the call in iterator() method Should I store the result object (Employee object ) in EmployeeDAO and then refer it later when I call public IModel model(Object object) { return new DetachableEmployeeModel((Employee)object); } and then look it up (by employee Id) from that stored object?
2. Do I need to take care of synchronization when I store the object? Any other suggestions? Thanks, RG igor.vaynberg wrote: > > On Thu, May 29, 2008 at 12:09 PM, nanotech <[EMAIL PROTECTED]> > wrote: >> >> Hi, >> I have a search form (in a panel)with various search fields(as text >> fields) >> on it. User should be able to fill in any number of search parameters >> and >> the results are to be displayed in table (with pagenation + sorting >> capablity on columns) in a different panel on the same page under the >> search >> panel. >> >> I started looking at DataTable. It seems a option that will solve my >> need. >> >> Looking at the datatable example on >> http://www.wicket-library.com/wicket-examples/repeater/ >> >> I observed that the following methods get called in the order >> >> 1. size() from CustomSortableDataProvider. >> 2. iterator() from CustomSortableDataProvider >> 3. load() from CustomLoadableDetachableModel. >> >> If I understand it correctly:-(Please correct me if I am wrong) >> * size() requires , the number of records that provider will be working >> with. So, in above case i'll have to make query thrrough service layer >> /DAO >> like this Select count(*) from Employees where firstName Like 'ABC' and >> lastName Like 'XYZ' >> >> * iterator(final int first, final int count) will call Service layer/DAO >> to >> do the actual query like this Select * from Employees where firstName >> Like >> 'ABC' and lastName Like 'XYZ' >> >> * finally in model ...I will call the CustomLoadableDetachableModel and >> its >> load() method will load the actual Employee model for each item that >> will >> be displayed on first page of the list being rendered in data table. >> >> >> It seems that there are too many queries in case of datatable. If the >> result >> set has thousands of records and we are displaying 100 per page then it >> will >> do 100+ queries to render all the items. >> >> Questions: >> 1. Did I sum up about DataTable correctly? > > no, there are only two queries per page render of datatable. > >> If yes, Won't this be a >> bottleneck considering the number of queries? > >> 2. Is there a better way of doing this? > > not until someone finds one. > > -igor > >> >> Thanks, >> RG >> >> >> >> >> >> >> >> -- >> View this message in context: >> http://www.nabble.com/Using-DataTable-tp17543606p17543606.html >> Sent from the Wicket - User mailing list archive at Nabble.com. >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- View this message in context: http://www.nabble.com/Using-DataTable-tp17543606p17545174.html Sent from the Wicket - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]