動的に作成された がありますHtmlInputText
。これは、セッション スコープ Bean のマップから値を取得するように設定されています。そのようです。
HtmlInputText input = new HtmlInputText();
String expression = "${catalogue.itemValues.A" + item.getId() + "}";
ValueExpression valExpression = expressionFactory.createValueExpression(facesInstance.getELContext(), expression, String.class);
input.setValueExpression("value",valExpression);
whereitemValues
は getter を持つマップでgetItemValues()
、キーは 、 などになりA1
ますA2
。
Map
キーA1
と値を使用してプログラムで値を追加しました1234
。JSF ページが表示されるたびに、値がレンダリングされます。ただし、値を変更してフォームを送信しても、値は変更されません。
要素でテストし、h:inputText
それを同じキーにリンクしました。値を更新でき、新しい値が生成されたHtmlInputText
コンポーネントに反映されます。
これはどのように発生し、どうすれば解決できますか?