Coo*_*ome 0 jsf primefaces jsf-2
根据 primefaces 文档,选择应该是一个数组。在下面的代码中 bean.selectedUsers 被定义为“HasUsersVO[] selectedUsers”,但数据表的值为 List。当我在数据表填满后单击“确定”按钮时,我收到粘贴在底部的强制转换错误。
<p:dataTable id="userListTable" value="#{bean.peopleVOList}"
var="user" rowClasses="odd even" selection="#{bean.selectedUsers}" rowKey="#{user.userGuid}"
<p:column selectionMode="multiple" style="width:18px">
</p:column>
.....
.....
</p:dataTable>
Run Code Online (Sandbox Code Playgroud)
22:59:16,962 INFO [class com.zreflect.emyed.managedbean.circle.CircleController] (http--127.0.0.1-8080-3) *******************Outside getUsersList********************
22:59:38,943 WARNING [javax.enterprise.resource.webcontainer.jsf.lifecycle] (http--127.0.0.1-8080-3) [Lcom.user.PeopleVO; cannot be cast to java.util.Collection: java.lang.ClassCastException: [Lcom.user.PeopleVO; cannot be cast to java.util.Collection
at org.primefaces.component.datatable.DataTable.getRowData(DataTable.java:835) [primefaces-3.3.1.jar:]
at org.primefaces.component.datatable.DataHelper.decodeMultipleSelection(DataHelper.java:262) [primefaces-3.3.1.jar:]
at org.primefaces.component.datatable.DataHelper.decodeSelection(DataHelper.java:240) [primefaces-3.3.1.jar:]
at org.primefaces.component.datatable.DataTableRenderer.decode(DataTableRenderer.java:72) [primefaces-3.3.1.jar:]
Run Code Online (Sandbox Code Playgroud)
异常消息和堆栈跟踪表明您PeopleVO[]在#{bean.peopleVOList}. 这个不对。它必须是Collection,最好是ArrayList<PeopleVO>。
private List<PeopleVO> peopleVOList;
Run Code Online (Sandbox Code Playgroud)
该#{bean.selectedUsers}确实必须是PeopleVO[]。那部分很好。
| 归档时间: |
|
| 查看次数: |
4977 次 |
| 最近记录: |