有关<p:selectonemenu> </p:selectonemenu>的required和valuechangeListener的冲突

时间:2012-06-14 05:42:49

标签: java jsf-2 primefaces

<p:selectOneMenu id="roleId" value="#{accessPage.roleId}" required="true">                   
   <f:selectItem itemLabel="#{msg['label.common.selecthere']}" itemValue="#{null}" />          
   <f:selectItems var="code" value="#{accessPage.roleIdList}" itemLabel="#{code.codeDesc}" itemValue="#{code.codeId}" />    
   <f:valueChangeListener type="com.ncs.caseconnect.base.app.utils.ValueChangeCleanUtils"/>    
   <p:ajax listener="#{accessPage.roleOrModuleChanged}" update="accessRight" />
</p:selectOneMenu>

当我们选择第一个null选项时,valueChangeListener和ajax不起作用。如果我们删除所需的属性,它工作正常。是否与requiredChangeListener之间存在冲突?

1 个答案:

答案 0 :(得分:0)

尝试替换

<f:selectItem itemLabel="#{msg['label.common.selecthere']}" itemValue="#{null}" />  

<f:selectItem noSelectionOption="true" itemLabel="#{msg['label.common.selecthere']}"/>