在 XPage 中,我有一个 CheckBox 控件绑定到 bean(称为产品)的属性。如果我将该属性设为像这样的布尔值..
private boolean selected = true;
public boolean isSelected() {
return selected;
};
public void setSelected(boolean selected) {
this.selected = selected;
};
并使用 EL 绑定复选框,#{product.selected)
然后页面最初可以正常打开,但在部分刷新时挂起,但是我在日志中看不到任何错误。
如果我在 bean 中添加另一个包装器 getter/setter 以返回如下文本版本:
public String getSelectedTxt() {
return String.valueOf(selected);
}
public void setSelectedTxt(String selectedTxt) {
selected = Boolean.parseBoolean(selectedTxt);
}
然后将复选框绑定到#{product.selectedTxt}
并制作uncheckedValue="false"
and checkedValue="true"
。有用!
在版本 9 中,它直接针对布尔版本工作,无需转换为文本。
所以问题是这听起来像 8.5.3 中的一个错误,将复选框控件映射到布尔值(以前有没有人这样做过?),还是我以错误的方式接近这个?