SEAM ベースの JSF Web アプリケーションを使用しています。カテゴリ名と ID を取得するルックアップ (ポップアップ ウィンドウ) を含む単純なフォームがあります (どちらも問題なく取得され、myView に保存されます)。ルックアップが返されると、カテゴリ名を使用して「selectedCategoryName」が設定されます (Jquery を使用)。
フォームを送信しようとしたときに問題が発生し、別のフィールドが検証に失敗しました (単純な必須フィールドがありません)。他のすべてのフィールドは変更されませんが、selectedCategoryName はクリアされます (Bean にはまだ値があるため、検証エラーを修正して再送信すると適切な送信に解決されます)。私の質問は、フォームの検証が失敗したときに「selectedCategoryName」にある値を表示し続けるにはどうすればよいですか?
前もって感謝します!
<s:decorate id="selectedCategoryField" template="/layout/edit.xhtml">
<span>
<h:panelGroup rendered="#{! myView.persisted}">
<img class="lookup" src="${request.contextPath}/images/lookup.gif" width="15" height="14" alt=""
title="Category Lookup"
onclick="return openNewWindow('${CategoryLookupUrl}?#{myView.lookupParameters}', 'id');"/>
</h:panelGroup>
<h:inputText id="selectedCategoryName" required="true"
value="#{myView.selectedCategoryName}"
size="50"
readonly="true">
<a:support event="onchanged" reRender="selectedCategoryField" ajaxSingle="true"/>
<a:support event="oninputchange" reRender="selectedCategoryField" ajaxSingle="true"/>
</h:inputText>
</span>