假设我有一个要验证的用户名,在这种情况下,当验证失败以及错误消息时,我需要以红色显示用户名 outputText 和用户名 inputText 字段。
我试图将所有这些绑定在一个面板组中,以便如果验证失败,所有字段都会受到影响。但简单地放置 panelgroup 是行不通的。
我的支持 bean 验证器
public void emailValidate(FacesContext context,
UIComponent componentToValidate,
Object value)
throws ValidatorException {
String email = value.toString();
if (!Validator.isEmailAddress(email))
{
FacesMessage message =
new FacesMessage(FacesMessage.SEVERITY_ERROR,"Email","Please enter valid email address");
throw new ValidatorException(message);
}
}
我的 jsf
<h:panelGroup>
<h:outputText value="Email"/>
<h:message for="emailInput/>
<h:inputText id="emailInput" value="#{mybean.email}" validator="#{mybean.emailValidate}"/>
</h:panelGroup>