我使用的是带有布尔(包装器类)属性的<p:selectOneRadio>
映射,因此当显示属性为null时,单选按钮显示为未选中(这是正确的),但是在单击“保存”按钮时,即使不选择任何选项(是/否),默认情况下也会在属性中设置false。保存后,“否”显示为被选中。
下面是代码(Primefaces 4):
<p:selectOneRadio value="#{myBean.hasMyBooleanProperty}">
<f:selectItem itemLabel="Yes" itemValue="#{true}" />
<f:selectItem itemLabel="No" itemValue="#{false}" />
</p:selectOneRadio>
请告诉我。
诚挚的问候,
索赫布·谢赫
发布于 2014-10-10 02:23:47
这个问题已经在这里得到了回答:(见BalusC的回答)
jsf: integer property binded to a inputtext in UI is set to zero on submit
将-Dorg.apache.el.parser.COERCE_TO_ZERO=false
添加到您的系统属性将修复它。确保布尔属性的类型是Boolean
,而不是原语。
https://stackoverflow.com/questions/26297104
复制