あなたの要件を正しく理解できたかどうかわかりません。私は次のことを想定しています: いくつかのバックエンドに文字列のリストと、ui:repeat
それらの文字列を入力フィールドで反復処理して編集するためのタグが必要です。いくつかの構文の問題があるかもしれませんが、私の考えは明確です:
public class Backend {
private List<String> myStrings;
public MyStringWrapper getMyStringWrapper(int index) {
return new MyStringWrapper(index);
}
public class MyStringWrapper {
private final int index;
public MyStringWrapper(int index) { this.index = index; }
public String getContent() { return myStrings.get(index); }
public void setContent(String newContent) { myStrings.add(index, newContent); }
}
}
フロントエンドでは、次のように使用します。
<ui:repeat var="_index" value="#{backend.getIndexSequence()}">
<p:inputText value="#{backend.getMyStringWrapper(_index).content}"/>
</ui:repeat>
もちろん、0 から文字列のサイズまでの int のリストを生成する getIndexSequence メソッドを提供する必要があります。