从当前行dataTable获取id以链接JSF Primefaces Java

4Mo*_*ney 5 datatable jsf primefaces jsf-2

我怎样才能获得当前Row p:dataTable primefaces的Id到我的链接哪里使用这个Id?描述它(对不起我的英语).我的dataTable看起来像这张图片:
http ://www.image-share.com/igif-2333-105.html
当我点击按钮我想得到行的Id在哪里是这个按钮,例如第1行有id 1,所以当点击按钮1时我必须得到ID = 1.显示我的链接在哪里看需要id:
http://'serverAddress'/ myApplication/PDF?type = document&id ="+ id"
变量id的类型为int getter,实体和bean的setter.JSF中的按钮如下所示:
h:commandButton value ="Print"action ="#{printBean.print()}"/>
方法'打印'启动我的链接.任何想法如何做到这一点?感谢帮助.

Kis*_*ash 18

你可以使用p:dataTable's rowIndexVar属性.

要引用每个行索引的迭代器的名称

可以在EL中使用其迭代器名称来获取行ID

例如:如果rowIndexVar="myId"那样,您可以使用EL using中的迭代器名称访问每一行索引#{myID}.

例:

<p:dataTable rowIndexVar="rowId" value="..." var="...">
    <p:column>
       <h:commandLink action="#{...}">
         <f:param name="id" value="#{rowId}" />
       </h:commandLink>
    </p:column>
</p:dataTable>
Run Code Online (Sandbox Code Playgroud)