0

比較的簡単にできると思われることをやろうとしています。基本的に、次のようなオブジェクトがあります。

public class Attribute {
   public UIInput getInput();
   public void setInput(UIInput input);
   public String getName();
   public void setName(String name);
}

Bean にこれらのリストがあり、リストを反復処理して表示しようとしています。

これが例です(p:dataTableも試しました)

<ui:repeat value="#{someBean.attributes}" var="a">
   <div>#{a.name} <ui:fragment binding="#{a.input}" /> </div>
</ui:repeat>

ただし、ui:fragment はそのようには機能しません。Request Value ステージの前にバインドされます (明らかに)。また、バッキング DataTable を作成してその方法でデータを追加しようとしましたが、この方法ではカスタム行を追加できないようです:

for (Attribute attr : bean.getAttributes) {
   Row r = new Row();
   r.setCell(0, attr.getName());
   r.setCell(1, attr.getInput());
   table.getRows().add( r );
}

死ぬほど探しましたが、何も見つかりません!別のコンポーネントの単なるラッパーである独自のコンポーネントを作成することは避けたかったのですが、その道をたどらなければならない場合はそうします。

4

0 に答える 0