Howard, So why do I get the following exception when I set volatile=true? It only happens when my Ajax request removes some of the Loop items. It sounds like Tapestry is still trying to do some sort of state recovery.
Cheers, Joost ----- exception ----- Caused by: java.util.NoSuchElementException at java.util.AbstractList$Itr.next(AbstractList.java:427) at org.apache.tapestry5.corelib.components.Loop.advanceVolatile(Loop.java:335) at org.apache.tapestry5.corelib.components.Loop.access$200(Loop.java:41) at org.apache.tapestry5.corelib.components.Loop$3.execute(Loop.java:92) at org.apache.tapestry5.corelib.components.Loop$3.execute(Loop.java:96) at org.apache.tapestry5.corelib.components.Form.executeStoredActions(Form.java:471) ... 81 more Thanks for you quick response. I added the param but now get a new Exception (see below). The exception still only happens when elements are removed from the Loop through AJAX, adding all works fine. This whole volatile concept is a bit fuzzy to me and scanning the source of the Loop component does not clear things up to me. Do you have any further pointers? Cheers, Joost --- the new Exception ------ On Thu, Mar 12, 2009 at 11:55 PM, Howard Lewis Ship <hls...@gmail.com> wrote: > That what volatile is supposed to do; when set to true, the Loop > doesn't record its state (i.e., the series of values iterated over) > into the form data. > > On Thu, Mar 12, 2009 at 3:20 AM, Joost Schouten (mailing lists) > <joost...@jsportal.com> wrote: >> Hi, >> >> AjaxFormLoop seems intended for formitems and would require a lot of >> javascript wiring to make it do what I want it to do. All I need is >> for the Form to completely ignore the Loop, just like it did nicely in >> 5.0.18. Do you know why the Loop's state needs to be persisted in the >> first place? And why can I not tell it to be completely ignored by the >> Form? >> >> It seems to me that all this state saving on a loop is needed if there >> are formitems in the loop. If so, it'd be great if I could just ignore >> the whole state saving and use the Loop in a nice and simple way by >> setting something like ignoreForm=true. >> >> Cheers, >> Joost >> >> On Tue, Mar 10, 2009 at 1:29 PM, DH <ningd...@gmail.com> wrote: >>> Hi, >>> >>> In your case, why not have a try on AjaxFormLoop component, but I haven't >>> tried this component yet and don't have much experience. >>> >>> Loop component in form is a bit tricky. Set volatile='true' means you need >>> have your source object unchanged. But you have deleted one row during >>> process, so exception happens. >>> >>> Thanks >>> >>> DH >>> >>> >>> ----- Original Message ----- >>> From: "Joost Schouten (mailing lists)" <joost...@jsportal.com> >>> To: "Tapestry users" <users@tapestry.apache.org> >>> Sent: Tuesday, March 10, 2009 11:13 AM >>> Subject: Re: [T5.1.0.0] Loop in Form problem introduced in T5.1.0.0 >>> >>> >>> Dear DH, >>> >>> Thanks for you quick response. I added the param but now get a new >>> Exception (see below). The exception still only happens when elements >>> are removed from the Loop through AJAX, adding all works fine. This >>> whole volatile concept is a bit fuzzy to me and scanning the source of >>> the Loop component does not clear things up to me. Do you have any >>> further pointers? >>> >>> Cheers, >>> Joost >>> >>> --- the new Exception ------ >>> >>> Caused by: java.util.NoSuchElementException >>> at java.util.AbstractList$Itr.next(AbstractList.java:427) >>> at >>> org.apache.tapestry5.corelib.components.Loop.advanceVolatile(Loop.java:335) >>> at org.apache.tapestry5.corelib.components.Loop.access$200(Loop.java:41) >>> at org.apache.tapestry5.corelib.components.Loop$3.execute(Loop.java:92) >>> at org.apache.tapestry5.corelib.components.Loop$3.execute(Loop.java:96) >>> at >>> org.apache.tapestry5.corelib.components.Form.executeStoredActions(Form.java:471) >>> ... 81 more >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org >> For additional commands, e-mail: users-h...@tapestry.apache.org >> >> > > > > -- > Howard M. Lewis Ship > > Creator Apache Tapestry and Apache HiveMind > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > For additional commands, e-mail: users-h...@tapestry.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org