I am making use of JSTL tags in my JSF application. With certain actions, I need the component tree to be rebuilt as if it was an initial build. My current symptoms are incorrect object to component associations, duplicate ids, and other issues with stale components. This is using a c:foreach (cannot use a repeat tag, see example link) tag which is used in the build phase.
My understanding is that it is possible to force a rebuild, but I haven't been able to find where or how that occurs. I am open to solutions that start on the client or in the server.
For an example of the code I am using refer to this page on dynamic tabs in Richfaces. http://in.relation.to/Bloggers/UsingDynamicallyCreatedRichFacesTabPanelForSearchResults
Note: Using ui:repeat or a4j:repeat is not feasible. See the example page for details.
Other Note: The app beans are session scoped and the data in them needs to be, just not the component tree state.
Update This question is directly to the issue raised in this article and the first comment. I didn't know how to actually do the workaround in the first comment and the accepted answer led me to it.