次のようなページがあります。
<h:form id="form">
<h:panelGroup id="panel">
<ui:repeat id="repeat" value="#{myBean.ojects}" var="item">
<h:panelGroup id="itemPanel">
<h:selectOneMenu ..... >
<p:ajax process="@this" update="itemPanel"/>
<f:attribute name="item" value="#{item}" />
</h:selectOneMenu ..... >
<h:inputText id="value" value="#{item.property}"/>
</h:panelGroup>
</ui:repeat>
</h:panelGroup>
</h:form>
私の問題は、Bean 内のオブジェクト参照の「プロパティ」値を変更し、「itemPanel」panelGroup を更新した後、ui:repeat をラップした panelGroup 全体を更新しない限り、変更された値を返さないことです。最初のケースでは、以前の値のみで更新が行われたことを応答で確認できます。私は本当に ui:repeat の一部 (値が変更された) の一部のみを再ロードできる必要があります。そうしないと追加されますが、ui:repeat の他の部分 (サイクル) 内の送信されていないデータは失われます。
アップデート:
繰り返し全体を含むパネルまたはフォームを送信する必要がある場合、実際には気にしないので、更新しても値は変更されませんが、プロセス値を変更しても何も更新されません..: (