当选择一个菜单的“选择”选项时,默认值在DB中保存为0.我可以将其更改为null吗? select one菜单的值绑定到bean属性。为此,我使用了select one菜单组件的converter属性。但它似乎没有将空字符串转换为null。我错过了什么?
<p:panelGrid columns="2" >
<p:outputLabel value="District" />
<p:selectOneMenu value="#{cJData.cJ.dC}" converter="javax.faces.Long">
<p:ajax listener="#{cJActionHandler.selectDC}"/>
<f:selectItem itemLabel="Select" itemValue="" />
<f:selectItems value="#{cJData.DCs}" var="coun"
itemLabel="#{coun.name}" itemValue="#{coun.id}" />
</p:selectOneMenu>
</p:panelGrid>
答案 0 :(得分:0)
使用以下
<f:selectItem itemLabel="Select" itemValue="#{null}" />
正如LongConverter#getAsObject
的{{3}}所说 - 这是您提交值时调用的方法 - Long
转换器只会将null
转换为{{1} }}