多くの入力フィールドを持つ「大きな」フォームを作成しています。簡単にするために、最初の列にラベルが含まれ、2番目の列に入力フィールドが含まれる2つの列を持つテーブルを作成するためのコードをカプセル化するfaceletコンポーネントを作成しようとしました。
コンポーネントを含むタグは次のようになります。
<ft:textInput cid="city" label="City:"
value="#{registrationBean.deal.city> }" />
textInput コンポーネントのソース (簡略化):
<param name="inputField" value="#{value}" />
<ice:inputText id="#{cid}" value="#{inputField}"
required="true">
</ice:inputText>
フォームは静かに見えますが、ユーザーの値が Bean に書き戻されないという問題があります。その理由は、 #{registrationBean.deal.city} が一度だけ評価され、フォームが送信されたときではないためだと思います。ここでの推論には重大な誤りがあると思いますが、それに関する適切なドキュメントが見つかりません。
ヒントをありがとう。