2

<ui:repeat>内部からマップ、セット、またはリストに値をプッシュできるかどうかを知りたいですか?

<h:inputtext>の値をセットに渡したいと思います。

コード:

<ui:repeat var="_par" value="#{cmsFilterParameterHandler.normaleSuchParameter()}">

      <p:outputLabel value="#{_par.bezeichnung}" />
      <p:spacer width="5px" />
      <p:inputText id="me" value="#{??? push me to a set ???}"/>
      <br /><br />

</ui:repeat>
4

3 に答える 3

1

あなたの要件を正しく理解できたかどうかわかりません。私は次のことを想定しています: いくつかのバックエンドに文字列のリストと、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 メソッドを提供する必要があります。

于 2013-08-13T10:50:53.967 に答える
0

こんな感じですか?

<p:inputText id="me" value="#{_par.input}"/>

BackBean で:

public class Par implements Serializable {

private String inputText;
private String bezeichnung;

public Par()
{
}

public void setInput(String input)
{
this.inputText = input;
}

public String getInput()
{
return this.inputText
}

public void setBezeichnung(String bezeichnung)
{
this.bezeichnung = bezeichnung;
}

public String getBezeichnung()
{
return this.bezeichnung
}

}
于 2013-08-13T07:55:24.617 に答える