J'ai un probleme dans un composant JSF.
Ma page se compose d'un tabbedPane, ainsi que ces composants que j'ai créé moi-même.
Néanmoins il doit manquer quelque chose d'important, car des que je submit, j'obtient une erreur de Duplicate ID :
java.lang.IllegalStateException: Duplicate component ID '_id0:_s:name' found in view.
com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:173)
com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:181)
com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:181)
com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:181)
com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:181)
com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:181)
com.sun.faces.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:85)
com.sun.faces.taglib.jsf_core.ViewTag.doAfterBody(ViewTag.java:169) org.apache.jsp.registerUser_jsp._jspx_meth_f_view_0(org.apache.jsp.registerUser_jsp:201)
Bien entendu, l'id du composant n'est présent qu'une seule fois dans la page, le problème survient uniquement lors d'un submit.
Je suppose que le problème vient du StateManagerImpl, que lors d'une requete, la map qui contient les composants n'est pas vidé.
J'ai essayé de mettre la viewRoot en Transient, cela a résolu le problème, mais temporairement seulement (car les phases de décodage ne sont plus effectué par la suite.)
Si quelqu'un peut m'aider...Je lui serais reconnaissant :)
salut,
j'essaye a répondre a ton problème:
par défaut chaque composant dans JSF doit avoir un ID(identifiant) unique
et si tu ne lui donne plus un identifiant le JSF lui attribuée un par défaut
comme _id0,_Id1,.....etc
donc vous devez retourner a votre code en associons a chaque composant un identifiant unique
ex:
<h:outputText id="welcomeOutput"
value="Welcome to JavaServer Faces!"/>
au revoir (Gasmi Abderrazek : gasmi2000@yahoo.fr)