I'm facing a problem using a datatable component. I can call the view twice without a problem, but the third time I get a IllegalStateException: Client-id : ... is duplicated in the faces tree. Before the exception occurs Hibernate shows a query for populating the datatable, so it's probably a rendering issue.
It's probably something stupid I'm overlooking, but I'm crushing my brains for some hours now on it. Any Ideas?
You get thus typically when updating a Faces view when the underlying JSF has been changed, so most commonly when you're tweaking stuff in development. Usually a complete page refresh will flush it out (meaning go to some other page, then request the offending page to be built from scratch, not via "back" or redisplay).
One thing that can help is to be generous when assigning id attributes on components. I've found that placing "id=" on forms and input controls is a general all-around boon.
An IDE is no substitute for an Intelligent Developer.