PrimeFacesを使用していて、1つのlayoutUnit
内のコンポーネントは、別のlayoutUnit
内の別のコンポーネントを更新する必要があります。
<p:layout>
<p:layoutUnit position="west" size="275" resizable="true" closable="true" collapsible="true">
<h:form id="formWest">
<div id="west">
<ui:insert name="west"></ui:insert>
</div>
</h:form>
</p:layoutUnit>
<p:layoutUnit id="layout_center" position="center">
<h:form id="formCenter">
<div id="content">
<ui:insert name="content"></ui:insert>
</div>
</h:form>
</p:layoutUnit>
</p:layout>
エラーメッセージは次のとおりです:Caused by: javax.faces.FacesException: Cannot find component with expression "formWest:execucao" referenced from "formCenter:form:mapaGoogle".
更新する必要があるコンポーネントはtd
内にあるので、<td jsf:id="execucao">
、 例えば。
ご存知のように、別のフォームからコンポーネントを参照するときは、フォームIDをコンポーネントIDに添付する必要があります。
また、別のフォームでコンポーネントを参照する場合は、フォームIDの前に別の:
を添付する必要があることも知っておく必要があります。
例:
<h:form id="form1">
<p:inputText id="input1" />
</h:form>
ここで、input1
を別のフォームから更新したい場合は、使用する必要があります。
:form1:input1
例:
<h:form id="form2">
<p:commandButton update=":form1:input1" />
</h:form>
あなたのケースでは:
:formWest:execucao