Jsf 2 Primefaces 4.0中的数据表选择行不工作
我正在使用JSF2.0、PrimeFaces4.0和JBoss5.0构建一个应用程序。我想选择一行数据表,为此我使用了以下代码Jsf 2 Primefaces 4.0中的数据表选择行不工作,jsf-2,primefaces,Jsf 2,Primefaces,我正在使用JSF2.0、PrimeFaces4.0和JBoss5.0构建一个应用程序。我想选择一行数据表,为此我使用了以下代码 <p:dataTable var="valuesTable" value="#{userBean.groupResultList}" paginator="false" id="valuesTable" resizable
<p:dataTable var="valuesTable"
value="#{userBean.groupResultList}" paginator="false"
id="valuesTable" resizableColumns="true"
rowKey="#{valuesTable.groupName}" selection="#{userBean.objSelectedGroupRow}"
selectionMode="single"
rendered="#{not empty userBean.groupResultList}">
<p:column id="grp">
用户bean
public class UserBean {
private List<GroupResultModel> groupResultList;
private GroupResultModel objSelectedGroupRow;
}
我得到了一个添加rowKey的解决方案。我已经添加了rowKey,但它仍然不起作用
请帮我解决这个错误
谢谢..尝试设置一个“var”,然后将行键引用到var名称,就像在showcase中一样,我尝试了相同的方法,但仍然得到了相同的错误..((我添加的行键似乎工作不正常..但我不知道问题出在哪里..问题是行id为null..这就是它给出错误的原因。。。
public class UserBean {
private List<GroupResultModel> groupResultList;
private GroupResultModel objSelectedGroupRow;
}
javax.servlet.ServletException: DataModel must implement org.primefaces.model.SelectableDataModel when selection is enabled.
javax.faces.webapp.FacesServlet.service(FacesServlet.java:321)
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:357)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
root cause
javax.faces.FacesException: DataModel must implement org.primefaces.model.SelectableDataModel when selection is enabled.
org.primefaces.component.datatable.DataTable.getRowKeyFromModel(DataTable.java:964)
org.primefaces.component.datatable.DataTableRenderer.encodeRow(DataTableRenderer.java:746)
org.primefaces.component.datatable.DataTableRenderer.encodeTbody(DataTableRenderer.java:658)
org.primefaces.component.datatable.DataTableRenderer.encodeRegularTable(DataTableRenderer.java:244)
org.primefaces.component.datatable.DataTableRenderer.encodeMarkup(DataTableRenderer.java:206)
org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:81)