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

Reply via email to