title: Losing inputs submitted in composite component
body: <p>I have a problem with submitting composite components. </p>
  
  <p>Most of my composite components contain both the input components and the "submit" button.
  When I tried to put the button still in the same h:form but not in the same composite component, the submitted value seemed to be "lost" somewhere. And, for instance, my validators got called on original values.</p>
  
  <p>Example :</p>
  
  <pre><code>&lt;composite:interface&gt;
    &lt;composite:attribute name="titreContext" required="true"/&gt;
  &lt;/composite:interface&gt;
  &lt;composite:implementation&gt;
  
      &lt;p:outputPanel id="selectionTitreDetailsPanel" styleClass="selectionTitreDetails"&gt;
      &lt;p:outputPanel id="selectionTitreDetailsPanelInner" rendered="#{not empty cc.attrs.titreContext.selected}"&gt;
  
      &lt;p:panelGrid columns="2" id="panelId"&gt;
        &lt;h:outputText id="idLabel" value="Id :"/&gt;
        &lt;h:outputText id="id" value="#{cc.attrs.titreContext.selected.titeluid}"/&gt;
        &lt;p:tooltip for="id" value="Identifiant unique"/&gt;
      &lt;/p:panelGrid&gt;
  
      &lt;p:panelGrid columns="2" id="titelePanel"&gt;
          &lt;p:outputLabel for="selectTitele" value="Titre :"/&gt;
          &lt;p:selectOneMenu id="selectTitele" value="#{cc.attrs.titreContext.selected.titele}" effect="fold" styleClass="fullWidth"&gt;
              &lt;f:selectItems value="#{constants.getTitelesForTypman(cc.attrs.titreContext.selected.titele.typman)}" var="titele" itemLabel="#{titele.titelelil}" itemValue="#{titele}" styleClass="fullWidth"/&gt;
                  &lt;p:column styleClass="fullWidth"&gt;#{titele.titelelil}&lt;/p:column&gt;
          &lt;/p:selectOneMenu&gt;      
      &lt;/p:panelGrid&gt;
  
      [...]
      &lt;p:commandButton id="confirmerModifications" icon="small_edit" type="submit" value="Confirmer les modifications" 
                      action="#{elutersEditionContext.confirmeModifsSelection}" process="mandatsTerritorial" 
                      update="mandatsTerritorial #{cc.attrs.notifUpdates}"/&gt;
  
  &lt;/composite:implementation&gt;
  </code></pre>
  
  <p>works.</p>
  
  <p>But putting the p:commandButton out of the composite :</p>
  
  <pre><code>&lt;h:form&gt;
  &lt;mylib:mycomponent /*parameters *//&gt;
  &lt;p:commandButton /*parameters*/ /&gt;
  &lt;/h:form&gt;
  </code></pre>
  
  <p>does not work. When I debug my validators, I can see that the modified values where not even submitted. Neither getLocalValue, getSubmittedValue nor getValue is changed.</p>
  
  <p>Is there a syntax in composite component declaration to use to correct this situation ?
  By the way : when I was writing my components as composite components rather than custom components, retrieving #{asen} in the backing bean just worked.</p>
  
  <p>Thanks in advance.</p>
  
  <p>I am using :</p>
  
  <ul>
  <li>PrimeFaces 3.4.1</li>
  <li>CODI 1.0.5</li>
  <li>OpenWebBeans 1.1.6</li>
  <li>MyFaces 2.1.9</li>
  <li>Tomcat 7.0.32</li>
  </ul>
  
  <p>(update) This very strange problem was caused by h:form nesting.</p>
  
  <p>Very strange because h:form nesting did not perturbate the processing of the first level of composite components, but caused this strange "input lost" in nested composite.</p>
  
  <p>Nesting looked like this :</p>
  
  <pre><code>&lt;h:form&gt;
  ...
      &lt;p:tabView ...&gt;
          &lt;p:tab&gt;
          &lt;h:form&gt;
              &lt;my:composite ....&gt;
          &lt;/h:form&gt;
      &lt;/p:tabView&gt;
  &lt;/h:form&gt;
  </code></pre>