我有一个包含大量条目的PrimeFaces DataTable。当我点击一行时,我在这里执行此操作:
<p:ajax event="rowSelect" listener="#{detailsBean.showData(data)}">
所以我想做的是在我的bean中调用一个方法并从被点击的表行中移交数据,但是当我调试它时,该对象始终为null。我不知道如何处理这件事。怎么了?
这是我从datatable获取所选项目的方法
XHTML:
<p:datatable value="#{yourBean.listObject}" selection="single" ---- and other suff---->
<p:ajax event="rowSelect" listener=#"{yourBean.aMethodInBean}"/>
</p:datatable>
豆:
YourObject yourObject;
List<YourObject> listObject;
-----
public void aMethodInBean(SelectEvent event) {
yourObject = (YourObject) event.getObject();
}
XHTML:
<p:dataTable value="#{bean.list}" selectionMode="single" selection="{bean.selectedEmployee}">
<p:ajax event="rowSelect" listener="#{bean.anyMethod()}"/>
</p:dataTable>
这里ajax不是强制性的
豆 :
List<Employee> list ;
Employee selectedEmployee;
public void anyMethod(){
}