0
我将由对象+布尔值组成的哈希表传递到我的视图中,我想显示每个对象的布尔值的值,并且当前有以下代码:JSF在复选框中显示数值的重复数字
<ui:repeat var="item" value="#{userTypeController.permissionItems}">
<h:outputText value="#{item}" />
<h:selectBooleanCheckbox value="#{userTypeController.checkMap[item]}"/>
</ui:repeat>
而HashMap的方法:
public Map<Permission, Boolean> getCheckMap() {
checkMap = null;
for (Permission p : getPermissionItems()) {
if (getPermissionItemsUserType().contains(p))
checkMap.put(p, Boolean.TRUE);
else
checkMap.put(p, Boolean.FALSE);
System.out.println(checkMap.get(p).toString());
}
return checkMap;
}
这应该工作和期间的System.out.println我看到一个真正的输出...
然而,复选框本身从不检查.. 。任何ID对我在做什么错在这里?
升级到2.1.4,仍然有同样的问题...还有什么我可以尝试? – SnIpY
那么,不要在getter中执行逻辑,而要在(post)构造函数或任何在渲染响应阶段之前只调用一次的方法。否则,有效的SSCCE会很有帮助,因为你的包含错误。 – BalusC