我正在尝试在 JSF2 项目中使用带有 ah:selectOneMenu 框的枚举。
到目前为止我得到了什么:
枚举:
public enum MyType {
TEST,
ME;
}
支持豆:
@ManagedBean
public class MyBean {
private MyType type;
public MyType[] getTypes {
return MyType.values;
}
public void setType(MyType type) {
this.type = type;
}
public MyType getType() {
return this.type;
}
}
xhtml页面:
<h:selectOneMenu id="mySelection"
value="#{myBean.type}">
<f:selectItems value="#{myBean.types}" />
</h:selectOneMenu>
我的问题是值正确显示但没有保存(我实际上是在 seam3 休眠项目中使用它)。当我使用自定义验证器尝试它时,我看到 setType 方法被调用了两次,第二次使用 null -> 导致没有保存任何内容。我错过了什么吗?
到目前为止,我已经检查了以下主题:
* jsf-2-0-use-enum-values-for-selectonemenu
* jsf-2-0-use-enum-in-selectmany-menu
* jsf-best-way-to -枚举-国际化-i18n
非常感谢您的帮助,
斯蒂芬