没有dataModel的JSF 2 dataTable行索引

时间:2013-01-31 18:52:18

标签: jsf jsf-2 datatable uirepeat

我一直在使用ui:repeat来生成表格。使用ui:重复使用varStatus很容易获得编号的行。我在调用辅助bean来处理列表导航时依赖varStatus中的行id,例如在列表中向上或向下移动项目。

现在我想创建一个复合组件,它构建一个可自定义的表,其中包含标记行,上/下移动等所需的所有功能。为此,ui:repeat将无法正常工作,因为我不能看到一种处理不同数量的列的方法;我需要在一个地方指定标题,在另一个地方指定正文(我还没有达到可以创建自定义组件的知识点)。因此,我继续使用数据表,因为使用这意味着将标题指定为与正文内容相同位置的构面。

这很有效,直到我注意到由于某种原因再没有varStatus。我已经花了很多工作来处理列表演示而不需要datamodel,我不想开始使用它。有没有办法在不使用datamodel的情况下显示表格中显示的当前行号?

我也正在使用viewScope,如果我理解正确,这意味着我无法将dataTable绑定到bean。

1 个答案:

答案 0 :(得分:30)

只需将表绑定到视图本身而不是bean。

<h:dataTable binding="#{table}" ...>

然后您可以在必要时使用#{table.rowIndex}。 E.g。

<h:column>#{table.rowIndex + 1}</h:column>