对于在 selectOneMenu 标签中选择小写布尔数据类型,如何绕过默认值为 false?
For selecting lower case boolean data type in selectOneMenu tag, how to bypass default value as false?
呈现此标签时,我预计“--Select one--”将显示为默认选择,但选择了 itemLabel as "False"。我的猜测是它可能与 java 默认为 false 中的小写布尔值有关,但我不太确定。
这个标签在dataTable里面,变量"foo"代表的每条记录都是java实体域对象的一个实例。我试图了解为什么会发生这种情况以及如何纠正它。非常感谢您在这件事上的建议。
<p:selectOneMenu value="#{foo.answer}">
<f:selectItem itemLabel="--Select one--" itemValue="" />
<f:selectItem itemLabel="True" itemValue="true" />
<f:selectItem itemLabel="False" itemValue="false" />
</p:selectOneMenu>
"foo" 实体域对象。
@Entity
@Table(name="FOO")
public class Foo {
@Type(type="org.hibernate.type.NumericBooleanType")
@Column(name="answer", nullable=false)
private boolean answer;
...
}
布尔值确实默认为 false。使其成为布尔值...您的 nullable=false 可防止存储 NULL 提交...
呈现此标签时,我预计“--Select one--”将显示为默认选择,但选择了 itemLabel as "False"。我的猜测是它可能与 java 默认为 false 中的小写布尔值有关,但我不太确定。
这个标签在dataTable里面,变量"foo"代表的每条记录都是java实体域对象的一个实例。我试图了解为什么会发生这种情况以及如何纠正它。非常感谢您在这件事上的建议。
<p:selectOneMenu value="#{foo.answer}">
<f:selectItem itemLabel="--Select one--" itemValue="" />
<f:selectItem itemLabel="True" itemValue="true" />
<f:selectItem itemLabel="False" itemValue="false" />
</p:selectOneMenu>
"foo" 实体域对象。
@Entity
@Table(name="FOO")
public class Foo {
@Type(type="org.hibernate.type.NumericBooleanType")
@Column(name="answer", nullable=false)
private boolean answer;
...
}
布尔值确实默认为 false。使其成为布尔值...您的 nullable=false 可防止存储 NULL 提交...