内置支持
为了获得数据表的行号,我在这里得到了一个答案,我可以将数据表直接绑定到视图(JSF 2 datatable行索引,没有dataModel)。
我在一个复合组件中使用该函数,同一页面中可能有几个函数。我认为,绑定使得不可能在每一页上使用多个组件;有可能以某种方式"单独"绑定每个表吗?
创建一个具有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>
只需使用ui:repeat,它已通过varStatus.index.