Hi,
as no one on the user list responded I will post my question / observation here:
I was thinking about to improve the TreeModel for the tree2 but came to a more general problem regarding thread-safety.
When a component (UIData / UITreeData) uses a local model there are no problems at all, everything runs in one thread per request.
Now if you move your model to any higher scope than request (e.g. providing a session scoped DataModel) as far as I can see there are potentially problems with threadsafety ... in a multi-threaded servlet environment. Two views with different components using the same model could interfere each other - setting different rows in the DataModel. The user could provide a special model but with the concept of setting a row and than retrieving data about that row its somehow impossible to do a synchronization in the model itself, so that every component gets the right data for its row currently processing.
Is this a flaw in the spec or do I miss something here? I have found no comments about that in the spec. The component implementation does no synchronization nor this is done in any DataModel impl.
Does anybody has experience with not-request-scoped DataModel?
Your comments?
Regards,
Mathias Werlitz
- Thread-safety of JSF DataModel / TreeModel mathias . werlitz
- Re: Thread-safety of JSF DataModel Sean Schofield
- Re: Thread-safety of JSF DataModel / TreeModel Manfred Geiler
- Re: Thread-safety of JSF DataModel / TreeModel Manfred Geiler
