У меня есть таблица данных JSF с кучей строк, в каждой строке есть selectOneMenu внутри, например:
<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>
Однако я не могу понять, как получить выбранную роль из каждой строки в методе сохранения. Другими словами, я хочу сохранить значение каждой строки. Я видел эту статью, в которой объясняется, как сохранить текстовое поле ввода:
http://balusc.blogspot.com/2006/06/using-datatables.html#EditableDatatable
но, похоже, это не относится к случаю h: selectOneMenu. У кого-нибудь есть пример кода, который это делает?
Спасибо!