Well, some other way how to index children would serve certainly better. I
encapsulated all children tags of tr:iterator into tr:group and it seems to
be working, bc then there is only one element in iterator's children
collection. However when using tr:group no stampstate is saved at all, so I
am not sure if this is working properly.

Tibor Blenessy

On Thu, Mar 10, 2011 at 14:39, Scott O'Bryan <darkar...@gmail.com> wrote:

> I think it may be a limitation of the current design.  It might be
> interesting if this could be enhanced to use some sort of 'stamp key'
> instead of index.
>
> On Mar 10, 2011, at 6:16 AM, Tibor Blénessy <blene...@gmail.com> wrote:
>
> > Hi,
> >
> > I found out that tr:iterator expects it's children List to remain always
> the
> > same, bc StampStates are indexed by position in children collection.
> However
> > this is not always true, during postback request UIInstruction components
> > generated by facelets are dropped from children collection (I think this
> > might be because they are not saved in the viewstate, maybe webflow and
> it's
> > serialization mechanism has something to do with this).
> >
> > Is this bug of Trinidad or is problem somewhere else? Maybe it would be
> > better if StampStates were indexed by component Id rather then by
> position?
> >
> > Any input much appreciated. Thanks
> >
> > Tibor
> >
> > On Tue, Mar 8, 2011 at 23:49, Tibor Blénessy <blene...@gmail.com> wrote:
> >
> >> Hello,
> >>
> >> I am having troubles with tr:iterator component. We are using
> tr:iterator
> >> to dynamically create form elements (there are several labels and text
> >> inputs for each item in the collection). However transition to next page
> >> ends with ClassCastException that HtmlScript cannot be cast to
> >> EditableValueHolder. This cast happens in restoreRowState method of
> EVHState
> >> class. It seems to me that StampStates are somehow mismatched during
> save
> >> and restore calls, and that HtmlScript component pickups wrong
> StampState
> >> from the map (there should be no stamp state for HtmlScript afaik, but
> there
> >> is instance of EVHState with corresponding key, I was unable to track
> how
> >> this instance of EVHState gets created, but it is in the map even before
> the
> >> first call to the saveStampState method for that request).
> >>
> >> We are using Trinidad 1.2.13, I found issue TRINIDAD-2047 in jira which
> >> seemed to be related to the issue, so I build current 1.2.x branch, but
> >> problem remains the same (althought 2047 helped a bit, bc stampstate map
> now
> >> doesnt contain null values in key1 of DualKey class ).
> >>
> >> I understand that's quite difficult to help with such a vague
> description,
> >> however it's quite difficult to simulate the issue in some simple
> scenario.
> >> I would be gratefull if somehow could explain how StampStates are
> supposed
> >> to work, bc code looks quite messy.
> >>
> >> We also use Spring Webflow 2.0 and Myfaces implementation 1.2.10 if it
> >> could be of any relevance.
> >>
> >> Thanks
> >>
> >> Tibor Blenessy
> >>
> >>
> >>
>

Reply via email to