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#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...