[jboss-user] [JBoss Seam] - Re: Client-id : _id5 is duplicated in the faces tree.
jsfMan
do-not-reply at jboss.com
Thu Sep 6 12:13:16 EDT 2007
Here is my page xhtml :
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
| xmlns:s="http://jboss.com/products/seam/taglib"
| xmlns:ui="http://java.sun.com/jsf/facelets"
| xmlns:f="http://java.sun.com/jsf/core"
| xmlns:h="http://java.sun.com/jsf/html"
| xmlns:a="https://ajax4jsf.dev.java.net/ajax"
| xmlns:rich="http://richfaces.ajax4jsf.org/rich"
| template="layout/template.xhtml">
|
| <ui:define name="body">
|
| <h:messages globalOnly="true" styleClass="message" id="globalMessages" />
|
| <h:form id="lot" styleClass="edit">
|
| <h:panelGrid columns="1" id="grid1" styleClass="table_m"
| headerClass="th_m" rowClasses="td_m">
| <f:facet name="header">
| <h:outputText value="#{msgsCommon.editer} #{msgLot.entityName}" />
| </f:facet>
|
|
|
|
| <s:decorate id="numeroLotDecoration" template="layout/edit.xhtml">
|
| <ui:define name="label">#{msgLot.numeroLot}</ui:define>
|
|
|
| <h:inputText id="numeroLot" required="true" size="60"
| maxlength="60" value="#{lotHome.instance.numeroLot}">
| </h:inputText>
| </s:decorate>
|
|
| <s:decorate id="montantDecoration" template="layout/edit.xhtml">
|
| <ui:define name="label">#{msgLot.montant}</ui:define>
|
| <h:inputText id="montant" value="#{lotHome.instance.montant}">
| </h:inputText>
| </s:decorate>
|
|
| <s:decorate id="nombreJoursDecoration" template="layout/edit.xhtml">
|
| <ui:define name="label">#{msgLot.nombreJours}</ui:define>
|
| <h:inputText id="nombreJours"
| value="#{lotHome.instance.nombreJours}">
| </h:inputText>
| </s:decorate>
|
|
| <s:decorate id="dateEcheanceDecoration" template="layout/edit.xhtml">
|
| <ui:define name="label">#{msgLot.dateEcheance}</ui:define>
|
| <h:inputText id="dateEcheance" maxlength="10" size="10"
| value="#{lotHome.instance.dateEcheance}">
| <s:convertDateTime pattern="dd/MM/yyyy" />
| </h:inputText>
| <s:selectDate for="dateEcheance" dateFormat="dd/MM/yyyy">
| <h:graphicImage url="img/dtpick.gif" style="margin-left:5px" />
| </s:selectDate>
| </s:decorate>
|
|
| <s:decorate id="descriptionLotDecoration"
| template="layout/edit.xhtml">
|
| <ui:define name="label">#{msgLot.descriptionLot}</ui:define>
|
|
|
| <h:inputTextarea id="descriptionLot" cols="80" rows="10"
| required="true" value="#{lotHome.instance.descriptionLot}"
| styleClass="richEditor" />
| </s:decorate>
|
|
|
| <div style="clear: both"><span class="required">*</span>
| #{msgsCommon.required}</div>
| </h:panelGrid>
|
| <h:panelGrid columns="5" id="gridEdit">
| <s:link id="cancel" propagation="end"
| view="/#{empty lotFrom ? 'LotList' : lotFrom}.xhtml"
| rendered="#{!lotHome.managed}">
| <h:graphicImage value="/img/house_go.gif" />
| </s:link>
| <h:commandButton id="save" action="#{lotHome.persist}"
| disabled="#{!lotHome.wired}" rendered="#{!lotHome.managed}"
| image="/img/disk.gif">
| </h:commandButton>
| <h:commandLink id="update" action="#{lotHome.update}"
| rendered="#{lotHome.managed}">
| <h:graphicImage value="/img/disk.gif" />
| </h:commandLink>
| <h:commandLink id="delete" action="#{lotHome.remove}"
| rendered="#{lotHome.managed}">
| <h:graphicImage value="/img/delete.gif" />
| </h:commandLink>
| <s:link id="done" propagation="end" view="/Lot.xhtml"
| rendered="#{lotHome.managed}">
| <h:graphicImage value="/img/wrench.gif" />
| </s:link>
| </h:panelGrid>
| </h:form>
|
| <rich:tabPanel switchType="ajax">
|
| <rich:tab label="#{msgForfait.entityName} *" labelClass="required">
| <h:panelGrid columns="1" styleClass="table_m" headerClass="th_m"
| rowClasses="td_m">
| <f:facet name="header">
| <h:outputText value="#{msgForfait.entityName}" />
| </f:facet>
| <h:outputText
| value="#{msgsCommon.selection} #{msgForfait.entityName}"
| rendered="#{lotHome.instance.forfait == null}" />
|
| <h:dataTable var="forfait" value="#{lotHome.instance.forfait}"
| rendered="#{lotHome.instance.forfait != null}"
| styleClass="table_s" columnClasses="table_s"
| rowClasses="td1_s,td2_s" headerClass="th_s"
| rowOnMouseOver="this.style.backgroundColor='#A5CBFF'"
| rowOnMouseOut="this.style.backgroundColor='#FFFFE0'"
| rowOnClick="this.style.backgroundColor='#FFE0E0'"
| rowOnDblClick="this.style.backgroundColor='#E0E0E0'"
| id="forfaitTable">
| <h:column>
| <f:facet name="header">
| <h:outputText value="action" />
| </f:facet>
| <s:link view="/Forfait.xhtml" id="viewforfait" propagation="none">
| <h:graphicImage value="/img/folder.gif" />
| <f:param name="forfaitForfaitId" value="#{forfait.forfaitId}" />
| </s:link>
| </h:column>
| <!--
| <h:column>
| <f:facet name="header"><h:outputText value="contactClient contactClientId" /></f:facet>
| <h:outputText value="#{forfait.contactClient.contactClientId}" />
| </h:column>
| -->
| <!--
| <h:column>
| <f:facet name="header"><h:outputText value="conditionsGenerales conditionsGeneralesId" /></f:facet>
| <h:outputText value="#{forfait.conditionsGenerales.conditionsGeneralesId}" />
| </h:column>
| -->
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{msgForfait.numeroAvenant}" />
| </f:facet>
| <h:outputText value="#{forfait.numeroAvenant}" />
| </h:column>
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{msgForfait.numeroCommande}" />
| </f:facet>
| <h:outputText value="#{forfait.numeroCommande}" />
| </h:column>
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{msgForfait.dateSignature}" />
| </f:facet>
| <h:outputText value="#{forfait.dateSignature}" />
| </h:column>
| <h:column>
| <f:facet name="header">
| <h:outputText value="#{msgForfait.montantTotal}" />
| </f:facet>
| <h:outputText value="#{forfait.montantTotal}" />
| </h:column>
| </h:dataTable>
|
|
| <h:panelGrid columns="1">
| <s:link view="/ForfaitList.xhtml">
| <f:param name="from" value="LotEdit" />
| <h:graphicImage value="/img/wrench.gif" />
| </s:link>
| </h:panelGrid>
| </h:panelGrid>
| </rich:tab>
|
| <rich:tab label="#{msgCollaborateurAffecte.entityName}">
|
| <h:panelGrid columns="1" styleClass="table_m" headerClass="th_m"
| rowClasses="td_m" width="100%">
| <f:facet name="header">
| <h:outputText value="#{msgCollaborateurAffecte.entityName}" />
| </f:facet>
|
| <h:outputText
| value="#{msgsCommon.selection} #{msgCollaborateurAffecte.collaborateurAffecte}" />
|
| <h:panelGrid columns="5">
| <h:panelGrid columns="1" id="gridDateDebutAffectation">
| <h:outputText
| value="#{msgCollaborateurAffecte.dateDebutAffectation}" />
| <h:panelGroup>
| <h:inputText id="dateDebutAffectation" size="16" required="true"
| value="#{collaborateurAffecteHome.instance.dateDebutAffectation}">
| <s:convertDateTime pattern="dd/MM/yyyy" />
| </h:inputText>
| <s:selectDate for="dateDebutAffectation" dateFormat="dd/MM/yyyy">
| <h:graphicImage url="img/dtpick.gif" style="margin-left:5px" />
| </s:selectDate>
| </h:panelGroup>
| </h:panelGrid>
| <h:panelGrid columns="1" id="gridDateFinAffectation">
| <h:outputText
| value="#{msgCollaborateurAffecte.dateFinAffectation}" />
| <h:panelGroup>
| <h:inputText id="dateFinAffectation" size="16" required="true"
| value="#{collaborateurAffecteHome.instance.dateFinAffectation}">
| <s:convertDateTime pattern="dd/MM/yyyy" />
| </h:inputText>
| <s:selectDate for="dateFinAffectation" dateFormat="dd/MM/yyyy">
| <h:graphicImage url="img/dtpick.gif" style="margin-left:5px" />
| </s:selectDate>
| </h:panelGroup>
| </h:panelGrid>
| <h:panelGrid columns="1" id="gridSelectOneCollaborateur">
| <h:outputText value="#{msgCollaborateurAffecte.collaborateurs}" />
| <h:panelGroup>
| <h:selectOneMenu id="selectOneMenuCollaborateur"
| value="#{collaborateurHome.instance}">
| <s:selectItems value="#{societeHome.instance.collaborateurs}"
| var="varCollaborateur" label="#{varCollaborateur.nom}"
| id="selectItemCollaborateurId" />
| <s:convertEntity />
| </h:selectOneMenu>
| </h:panelGroup>
| </h:panelGrid>
|
| <h:panelGrid columns="1" id="gridAVBVNVNNV">
| <h:commandButton id="saveCollaborateurCollaborateurCollab"
| action="#{collaborateurAffecteHome.persist}"
| disabled="#{!collaborateurAffecteHome.wired}"
| rendered="#{!collaborateurAffecteHome.managed}"
| image="/img/disk.gif">
| </h:commandButton> </h:panelGrid>
| </h:panelGrid>
|
| <h:outputText
| value="#{msgsCommon.selection} #{msgCollaborateurAffecte.entityName}"
| rendered="#{empty lotHome.collaborateurAffectes}" />
|
| <h:dataTable value="#{lotHome.collaborateurAffectes}"
| var="collaborateurAffecte"
| rendered="#{not empty lotHome.collaborateurAffectes}"
| headerClass="th_s" styleClass="table_s" columnClasses="table_s"
| rowClasses="td1_s,td2_s"
| rowOnMouseOver="this.style.backgroundColor='#A5CBFF'"
| rowOnMouseOut="this.style.backgroundColor='#FFFFE0'"
| rowOnClick="this.style.backgroundColor='#FFE0E0'"
| rowOnDblClick="this.style.backgroundColor='#E0E0E0'"
| id="collaborateurAffectesTable">
| <h:column>
| <f:facet name="header">
| <h:outputText value="action" />
| </f:facet>
| <s:link view="/CollaborateurAffecte.xhtml"
| id="selectcollaborateurAffecte" propagation="none">
| <h:graphicImage value="/img/folder.gif" />
| <f:param name="collaborateurAffecteCollaborateurAffecteId"
| value="#{collaborateurAffecte.collaborateurAffecteId}" />
| <f:param name="collaborateurAffecteFrom" value="Lot" />
| </s:link>
| </h:column>
|
| <h:column>
| <f:facet name="header">
| <h:outputText
| value="#{msgCollaborateurAffecte.dateDebutAffectation}" />
| </f:facet>
| <h:outputText
| value="#{collaborateurAffecte.dateDebutAffectation}" />
| </h:column>
|
| <h:column>
| <f:facet name="header">
| <h:outputText
| value="#{msgCollaborateurAffecte.dateFinAffectation}" />
| </f:facet>
| <h:outputText value="#{collaborateurAffecte.dateFinAffectation}" />
| </h:column>
|
| </h:dataTable>
|
| <h:panelGrid columns="1" rendered="#{lotHome.managed}"
| id="collaborateurAffectes">
| <s:link id="addCollaborateurAffecte"
| view="/CollaborateurAffecteEdit.xhtml" propagation="none">
| <h:graphicImage value="/img/user_add.gif" />
| <f:param name="lotLotId" value="#{lotHome.instance.lotId}" />
| <f:param name="collaborateurAffecteFrom" value="Lot" />
| </s:link>
| </h:panelGrid>
| </h:panelGrid>
| </rich:tab>
| </rich:tabPanel>
| </ui:define>
|
| </ui:composition>
When I add red rows in my page, it displays this errors :
Exception during request processing: javax.servlet.ServletException: Client-id : _id5 is duplicated in the faces tree.
| javax.faces.webapp.FacesServlet.service(FacesServlet.java:121)
| org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
| org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
| org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
| org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
| org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
| org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
| org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
| org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
| org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
| org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
| org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96)
| org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)
| org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
| org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| java.lang.Thread.run(Unknown Source)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4081743#4081743
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4081743
More information about the jboss-user
mailing list