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

时间:2013-11-09 16:37:42

标签: jsf jsf-2 primefaces datatable

如何获取当前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()}”/>
方法'打印'启动我的链接。任何想法如何做到这一点?谢谢你的帮助。

2 个答案:

答案 0 :(得分:18)

您可以使用p:dataTable的{​​{1}}属性。

  

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

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

例如: if rowIndexVar然后您可以使用rowIndexVar="myId"在EL中使用该迭代器名称访问每一行索引。

示例:

#{myID}

答案 1 :(得分:1)

在bean中获取id

map<String,String> par_map = new HashMap<String,String>(); par_map=FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap();

String id=par_map.get("id");