ユーザーが提供するいくつかのフィールド(主にp:inputText )を表示するデータ入力フォームがあります。これらの一部はLOVであるため、ユーザーが適切な値を選択できるようにp:dialogを表示します。p:dialogは、p:inputTextの横にあるp:commandLinkによって表示されます。以下に示すコードの主要部分:
<h:form id="parentForm">
(...)
<p:inputText value="#{CustomerCEVController.customer.municipality}" id="customerMncName"/>
<p:commandLink type="button" onclick="MunicipalityDlg.show()" styleClass="ui-icon ui-icon-search"/>
(...)
<p:commandButton value="Submit" id="save" actionListener="#{CustomerCEVController.saveButtonListener}" /> (...)
</h:form>
問題は、ユーザーがp:commandLinkをクリックしてp:dialogを表示する(値の1つを選択できるようにする)たびに、外部フォームがライフサイクルフェーズ(ビューの復元、リクエスト値の適用、プロセス検証など)を通過することです。 。)p:commandLinkはh:form内に配置されているため。ユーザーが開くすべてのダイアログでh:formを投稿することを避けながら、このダイアログ表示機能を実装するにはどうすればよいですか?