Comment puis-je obtenir des valeurs d'un selectOneMenu à l'intérieur d'un JSF datatable?

J'ai un JSF datatable avec un tas de lignes, chaque ligne ayant un selectOneMenu à l'intérieur comme ceci:

    <h:form 
      <h:dataTable id="myTable"
        binding="#{myBean.dataTable}"
        value="#{myBean.dataTableRows}" var="row"
        first="0" rows="0" dir="LTR" frame="hsides" rules="all">

        <h:column>
          <f:facet name="header">
            <h:outputText value="Sample Name" />
          </f:facet>
          <h:outputText value="#{row.sampleName}" />
        </h:column>

        <h:column>
          <f:facet name="header">
            <h:outputText value="Role" />
          </f:facet>
          <h:selectOneMenu value="#{row.role}"
            id="roleInput">
            <f:selectItems value="#{myBean.allRoles}" />
          </h:selectOneMenu>
        </h:column>

      </h:dataTable>

      <h:commandButton value="Save" action="#{myBean.save}" />
    </h:form>

Cependant, je n'arrive pas à trouver comment obtenir le rôle sélectionné de chaque ligne dans la méthode save. En d'autres termes, je veux sauver chaque ligne de la valeur. J'ai vu cet article, qui explique comment enregistrer une zone de texte d'entrée:

http://balusc.blogspot.com/2006/06/using-datatables.html#EditableDatatable

mais il ne semble pas s'appliquer à la h:selectOneMenu cas. Quelqu'un aurait-il un exemple de code qui fait cela?

Merci!

OriginalL'auteur | 2009-06-12