将多个JSF dataTable绑定到视图

时间:2013-02-04 14:19:22

标签: jsf jsf-2 binding datatable composite-component

为了获取数据表的行号,我在这里得到了一个答案,我可以将dataTable直接绑定到视图(JSF 2 dataTable row index without dataModel)。

我在复合组件中使用该功能,并且可能在同一页面中有几个。我相信绑定使得不可能在每个页面上使用多个组件;是否有可能以某种方式“单独”绑定每个表?

2 个答案:

答案 0 :(得分:1)

使用UIData属性创建支持组件类。

@FacesComponent("fooComponent")
public class FooComponent extends UINamingContainer {

    private UIData table;

    // +getter +setter
}

然后将其绑定到#{cc.table}#{cc}引用当前支持组件实例)。

<cc:interface componentType="fooComponent">
    ...
</cc:interface>
<cc:implementation>
    <h:dataTable binding="#{cc.table}" ...>
        <h:column>#{cc.table.rowIndex + 1}</h:column>
        ...
    </h:dataTable>
</cc:implementation>

答案 1 :(得分:0)

只需使用ui:repeat,它已通过varStatus.index内置支持。