Is there really no one who could give me some feedback on this? Personally I think the point outlined here is quite important, because it's about wether or not AJAX and JSF can make the perfect match they promised ...
Yes, we are well aware about this issues. You touch two problems here that are common for JSF:
1. Tree restore on every request. This one is an obvious defect from JSF 1.0 times and it can be partially solved in 1.2, however we still maintain 1.1 compatibility. We are considering to drop support for 1.1 in future and that may open the opportunity to use better approach from 1.2, but I do not know how important 1.1 is for community.
2. Data Table Model inefficiency. It is bad idea to load it every time from the database in any case, because on earlier phases (2-4) of the post-back you must restore exact table state as it was on phase 6 during rendering. Someone can add/delete rows in the database and this *may* create a mess on a post-back. I'd recommend use of rich:dataTable and our Extended Data Table Model, which has a features to improve efficiency of data loading.
2.b You can avoid unnecessary re-loads if use client switch mode. However, that depends from your use case.
2.c Yes, you cannot use xhtml markup with selfRendered, everything has to be a components. I suggest you to re-consider your markup.
Again the question of restore view efficiency is a important for us in JSF 2.0 group and it was already discussed. We will have an ultimate solution in 2.0. Same for Data Table Model.
Thank you for this thorough reply. I already suspected some specification flaws were at the root of this 'evil'. But your post made it clear that it was not my misunderstanding or mistake that was hampering my solution.
As far as I am concerned you could just drop the 1.1 support, but on the other hand it's nice to see you think about the community :).
For the DataTable issue you discribe - that's not what I do. I simply don't use DataTable. I have taken the best of both worlds and what I liked from the old world was the passing of crucial parameters (like the ID of the item you select from a list). This eliminates the add/delete rows issue you described, and allows the managed beans from the detail page to be independent of the managed bean of the list page. As a positive side effect bookmarking pages is no longer impossible.
Anyway, I kindly thank you for this clarification - it makes me looking forward to the JSF 2.0 release even more !!