我已经为我的屏幕实现了一个自定义验证器,参考给定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>