我正在使用jsf 2.2 majorra和primefaces 5.1构建一个webapp
我知道这可能之前已经得到了解答,但是我没有发现我的错误......我从主要的展示中抽取了一些例子并尝试了互联网建议的一些东西,但它不想工作
- (void)viewWillLayoutSubviews{}
我试图加载此列表,以便在访问页面时已选择某些用户,例如默认值
所有用户都会根据需要显示,但没有默认值加载到复选框
提前致谢
答案 0 :(得分:3)
好的,现在我找到了答案:
工作代码 - >
<p:selectManyMenu id="userList"
value="#{userAdministrationController.selectedUsers}" var="t"
filter="true" filterMatchMode="contains" showCheckbox="true" >
<f:selectItems value="#{userAdministrationController.selectItemList}"
var="user" itemValue="#{user}" />
<p:column>
<h:outputText value="#{t}" />
</p:column>
</p:selectManyMenu>
没有转换器!在我的bean中我必须为预选值创建一个List,列表中的东西必须与selectitems的VALUES类型相同
List<User> inactiveUsers = userService.findByActive(false);
List<User> userList = userService.findAll();
selectItemList = new ArrayList<SelectItem>();
for (User user : userList) {
SelectItem selectItem = new SelectItem(user.getFullName(), WordUtils.capitalize(user.getFullName()));
selectItemList.add(selectItem);
}
selectedUsers = new ArrayList<String>();
for (User user : inactiveUsers) {
String userName = user.getFullName();
selectedUsers.add(userName);
}