Primefaces3.2でJSF2.1のMojarra実装を使用しています。
私の問題はおおよそ次のようになります。
<p:dialog id="someDialog">
..
<h:form id="dialogForm">
<p:commandLink action=".."update=":someForm:someUIRepeat:someDataTable:someInputTextArea"/>
</h:form>
</p:dialog>
<h:form id="someForm">
<ui:repeat id="someUIRepeat" value=".." ..>
<p:dataTable id="someDataTable" value=.. >
<p:column>
<p:inputTextarea id="someInputTextarea" value=../>
<p:column>
.. here go other columns
<ui:repeat>
</h:form>
問題は、ダイアログでcommandLinkをクリックしても、inputTextareaが更新されないことです。ただし、これをcommandLinkの更新で記述した場合:update = ":someForm:someUIRepeat:someDataTable、:someForm:someUIRepeat:someDataTable:someInputTextArea"
次に、dataTable全体が更新され、inputTextareaも更新されますが、ダイアログのcommandLinkをクリックすると、他の列にあるフィールドの値が消去されます。
dataTableをui:repeat内に配置する理由は、dataTableを1つのコレクションの各行にバインドする必要があり、問題とは関係がないと思うためです。
この問題を解決する方法はありますか?
前もって感謝します、
ヌルジャン。