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