I agree. Just for comparison check out these numbers. Something is fundamentally wrong with how WW is implemented or how I am abusing it :)
case 1) <ui:select> tag Execution Time=12.482 sec case 2) <ww:iterator> tag only Execution Time=10.709 sec case 3) JSP scriplet using WW API Execution Time=0.0020 sec Here is the code: <%@ taglib uri="webwork" prefix="ww" %> <%@ taglib uri="webwork" prefix="ui" %> <%@ page session="false" %> <% long start, end = -1; %> <table width="100%"> <tr> <!-- start cell with webwork components --> <ww:action name="'CountriesList'" id="countrieslist"/> <% start = System.currentTimeMillis(); %> <ui:select label="'Country'" name="'country'" list="@countrieslist/countries" listKey="'countryCode'" listValue="'description'"/> <% end = System.currentTimeMillis(); %> <!-- end cell with webwork components --> </tr> </table> <p> Execution Time=<%= ((double)end - start) / 1000.0 %> sec </p> <table width="100%"> <tr> <!-- start cell with webwork components --> <% start = System.currentTimeMillis(); %> Country: <select name="country"> <ww:iterator value="@countrieslist/countries"> <option value="<ww:property value="countryCode"/>"> <ww:property value="description"/> </option> </ww:iterator> </select> <% end = System.currentTimeMillis(); %> <!-- end cell with webwork components --> </tr> </table> <p> Execution Time=<%= ((double)end - start) / 1000.0 %> sec </p> <table width="100%"> <tr> <!-- start cell with webwork components --> <% start = System.currentTimeMillis(); %> <% webwork.util.ValueStack vs = webwork.util.ValueStack.getStack( pageContext ); java.util.Collection countries = (java.util.Collection)vs.findValue("@countrieslist/countries"); out.println("<PRE>"); for(java.util.Iterator iter = countries.iterator(); iter.hasNext(); ) { iter.next(); } out.println("</PRE>"); %> <% end = System.currentTimeMillis(); %> <!-- end cell with webwork components --> </tr> </table> <p> Execution Time=<%= ((double)end - start) / 1000.0 %> sec </p> > -----Original Message----- > From: Hani Suleiman [mailto:[EMAIL PROTECTED]] > Sent: Sunday, January 12, 2003 3:04 PM > To: [EMAIL PROTECTED] > Subject: Re: [OS-webwork] Slow performance using ww:iterator tag > (version 1.2.1)? > > > Only after the first try. I don't think slapping on oscache is the > solution, as it just hides the performance problem (of course, adding > oscache is always a good idea, but making that first hit faster would > also be a good idea) > > On Sunday, January 12, 2003, at 06:00 PM, Mike Cannon-Brookes wrote: > > > Simple : OSCache with a session scoped cache entry. This > will drop the > > run > > time down to about 1ms. > > > > Cheers, > > Mike > > > > On 12/1/03 9:36 PM, "Robert Nicholson" > ([EMAIL PROTECTED]) penned the > > words: > > > >> That is flabbergasting. Couldn't you cache the list when > the user logs > >> in? > >> > >> Why don't you take a look at the template and see if you > can nail down > >> what's causing the delays assuming you haven't done that already of > >> course. If it's user specific what does countries method look like? > >> > >> On Sunday, January 12, 2003, at 01:38 AM, Kirk Rasmussen wrote: > >> > >>> Happy new year everyone! I have a simple question about the > >>> <webwork:iterator> tag and performance using WW 1.2.1. > >>> > >>> I have this list of countries that contains 245 entries. When I > >>> execute the following fragment, it takes about 15 seconds > to execute > >>> the iterator loop by itself. Any of you WW gurus have > some pointers > >>> on making it faster? I can't simply cache the select > list because > >>> the > >>> form is for an address book so the selected value is user > specific. > >>> > >>> <%@ taglib uri="webwork" prefix="ww" %> > >>> <%@ taglib uri="webwork" prefix="ui" %> > >>> <% > >>> long start, end = -1; > >>> %> > >>> > >>> <table width="100%"> > >>> <tr> > >>> <!-- start cell with webwork components --> > >>> <ww:action name="'CountriesList'" id="countrieslist"/> > >>> <% start = System.currentTimeMillis(); %> > >>> <ui:select label="'Country'" name="'country'" > >>> list="@countrieslist/countries" listKey="'countryCode'" > >>> listValue="'description'"/> > >>> <% end = System.currentTimeMillis(); %> > >>> <!-- end cell with webwork components --> > >>> </tr> > >>> </table> > >>> <p> > >>> Execution Time=<%= ((double)end - start) / 1000.0 %> sec > >>> </p> > >>> > >>> Thanks, > >>> Kirk Rasmussen > >>> Lucasfilm Ltd. > >>> > >>> > >>> ------------------------------------------------------- > >>> This SF.NET email is sponsored by: > >>> SourceForge Enterprise Edition + IBM + LinuxWorld > Something 2 See! > >>> http://www.vasoftware.com > >>> _______________________________________________ > >>> Opensymphony-webwork mailing list > >>> [EMAIL PROTECTED] > >>> https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork > >> > >> > >> > >> ------------------------------------------------------- > >> This SF.NET email is sponsored by: > >> SourceForge Enterprise Edition + IBM + LinuxWorld = > Something 2 See! > >> http://www.vasoftware.com > >> _______________________________________________ > >> Opensymphony-webwork mailing list > >> [EMAIL PROTECTED] > >> https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork > > > > > > > > ------------------------------------------------------- > > This SF.NET email is sponsored by: > > SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! > > http://www.vasoftware.com > > _______________________________________________ > > Opensymphony-webwork mailing list > > [EMAIL PROTECTED] > > https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork > > > > > > ------------------------------------------------------- > This SF.NET email is sponsored by: > SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! > http://www.vasoftware.com > _______________________________________________ > Opensymphony-webwork mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork > ------------------------------------------------------- This SF.NET email is sponsored by: FREE SSL Guide from Thawte are you planning your Web Server Security? Click here to get a FREE Thawte SSL guide and find the answers to all your SSL security issues. http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0026en _______________________________________________ Opensymphony-webwork mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/opensymphony-webwork