字段为空时不调用自定义验证程序

时间:2013-11-23 17:37:01

标签: validation jsf jsf-2.2

我已经为我的屏幕实现了一个自定义验证器,参考给定here的示例。

但在我的情况下,如果我没有在任何字段中输入任何值,则不会调用我的验证器方法。因此,永远不会检查空字段。每次都会显示所需的消息。

如果我删除了所需的属性,即使在这种情况下,只有当字段中包含某些值时才会调用验证器。如何在验证器类中完成所有验证?

我的xhtml:

 <h:form>
                <p:messages id="message" closable="true"/>  
                <h:panelGrid columns="3" id="changePassPanel"> 
                    <h:outputLabel for="pwd0" value="Current password :" />  
                    <p:password id="pwd0" value="#{homeBean.password1}">                            
                        <f:validator validatorId="PasswordValidator"></f:validator>
                        <f:attribute name="pwd1" value="#{pwd1}" />
                        <f:attribute name="pwd2" value="#{pwd2}" />
                    </p:password> 

                    <h:outputLabel for="pwd1" value="New password :" />  
                    <p:password id="pwd1" value="#{homeBean.password2}" binding="#{pwd1}"/> 

                    <h:outputLabel for="pwd2" value="Confirm new password :" />  
                    <p:password id="pwd2"  binding="#{pwd2}"/>
                </h:panelGrid>  
                <p:commandButton id="saveButton" value="Save"  validateClient="true"/>  
            </h:form>

0 个答案:

没有答案