We have to work with search results that are sometimes 1000+ items in size. In addition, much of the information we have is not keyed so we cannot say give results between id 2000 and id 20020.
Some things I found to help with search results where we did do in memory sorting/paging were: 1. Create view-specific lightweight objects to be pulled from the DB 2. Memory allowed, it's faster to pull them all at once than lazy load 4. The real cause of some of our performance problems were the JSP's/HTML in rendering a huge list to the client vs. only showing 20 at once. To handle this, I created a SearchResultListAdaptor that could sit in the session and handle paging (if anyone wants to argue session scope with me, bring it on--). The SearchResultListAdaptor then contained the behavior of sort order/paging, etc. Sorting was done via bean property using a BeanUtilsComparator. So my SearchResultListAdaptor could then work with an list of beans. Best Regards, Jacob -----Original Message----- From: Arne Brutschy [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 03, 2004 12:57 PM To: Struts Users Mailing List Subject: Best way to handle big search results.. Hi, I'm looking for the best way to handle big search results. Setting: the user can search for other users in the ldap directory. This might return a long list of results (~40.000 entrys). Sadly, OpenLDAP doesn't support server-side sorting, so I have to sort the results myself. I want to display 20 items per page, and the user can browse through these results. What is the best way to handle these result object? Sorting once and storing/caching it in the session or searching and sorting every time the user requests a new page of results? Any thoughts/experiences? Regards, Arne Brutschy --------------------------------------------------------------------- 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]

