Tobias, a row list (or array) is transformed internally to a SortableModel, but I guess it then keeps your list forever. As an alternative, you can provide either a DataModel (JSF standard) or a CollectionModel (Trindad specific) class instance, see related javadoc. The former handles rows by position, so that it isn't suitable for mutable row sets as long as you need row selection or updating. The latter handles rows by key (and unfortunately by position as well, this is another thread subject), so that is suitable for row sets changing from request to request (rows are identified by unique key). If you provide your own model, then you can change contents (e.g. rows) from request to request, since then your model is requested to feed rows as soon as the table component needs them. Then you can apply your cache policies for paging, etc.

-- Renzo

Tobias Kilian wrote:
Renzo Tomaselli schrieb:
Hi Tobias, I know nothing about Seam, but I had a table refresh problem in the past, when my user was allowed to change colum layout/composition on the fly.
In order to refresh the table children, I had to call:

           ((UIXTable)table).resetStampState();

where - of course - I got the actual component through the binding attribute. Model contents - e.g. rows - can change happily from request to request, provided that you feed the table value attribute through a properly up-to-date own CollectionModel. Btw, I assume using request-scoped beans here.
Hi Renzo!

Thanks for your reply!
The binding already happens in the request scope. I have a List of entitys as value to the table, which contents can change, but this way, I dont get the model changed. So I need to give a CollectionModel instead ? How do I setup my own collectionModel? Can you give me any hints or links to that? Im pretty new to Trinidad, Seam and even to Java :-)

Thanks,
Tobias


Reply via email to