Я использую richfaces datatable.
Чтобы редактировать rich: datatable, я использовал следующие строки
<a4j:commandLink
styleClass="no-decor"
reRender="machineDisplayTable"
value="edit"
oncomplete="#{rich:component('editMyMachinePanel')}.show()">
<f:setPropertyActionListener
target="#{machineTable.myMachineToEdit}"
value="#{Machine}"/>
</a4j:commandLink>
, где «machineDisplayTable» - это идентификатор для datatable, «editMyMachinePanel» - rich:modalpanel, «machineTable» - это класс бина, а «myMachineToEdit» - это класс типа «машина».
Теперь в rich: modelpanel, где я печатаю «machineTable.myMachineToEdit.hostname», я ничего не получаю.Код для панели моделей:
<rich:modalPanel id="editMyMachinePanel" autosized="true">
<f:facet name="header">
<h:outputText value="#{machineTable.myMachineToEdit.hostname}" />
</f:facet>
<a4j:commandButton value="Cancel" onclick="#{rich:component('editMyMachinePanel')}.hide(); return false;" />
</rich:modalPanel>
Кажется, что первая панель обрабатывается, а затем присваивается значение machineTable.myMachineToEdit с помощью f: setPropertyActionListener.
В любом случае я могу назначить machineTableСначала нужно .myMachineToEdit, а затем визуализировать модалпанель.
Два имп-сайта, относящихся к одному и тому же:
http://richfaces -showcase.appspot.com / richfaces / component-sample.jsf? demo= dataTable & sample = dataTableEdit & skin = blueSky
и
http://binamebou.be/phoenix-framework/wiki/index.php5?title=Richfaces_FAQ
Одно решение предоставляется во второй ссылке (действие настройки), но также не работает вмой случай.