写过一篇关于JSF2中Validator的实现,但那是JSF1中的实现方式,后来了解到JSF2中的实现其实更简单,其实只需要俩步:
1.定义Validator类,并实现Validator接口,并使用@FacesValidator注解
2.在页面中应用:
EmailValidator:
@FacesValidator(value="com.bond.validator.EmailValidator")
public class EmailValidator implements Validator {
private String pattern="^[_a-z0-9]+@([_a-z0-9]+\\.)+[a-z0-9]{2,3}$";
public EmailValidator() {
System.out.println("EmailValidator created");
}
@Override
public void validate(FacesContext context, UIComponent arg1, Object arg2)
throws ValidatorException {
String noValid = ContextUtil.getI18NMessage(context,
"#{msg.emailNotValid}");
String email = (String) arg2;
Pattern p = null;
p = Pattern.compile(pattern);
Matcher matcher = p.matcher(email);
if (!matcher.matches()) {
FacesMessage message = new FacesMessage();
message.setDetail(noValid);
message.setSummary(noValid);
message.setSeverity(FacesMessage.SEVERITY_ERROR);
throw new ValidatorException(message);
}
}
public String getPattern() {
return pattern;
}
public void setPattern(String pattern) {
System.out.println("setPattern pattern: " + pattern);
this.pattern = pattern;
}
}
2.页面:
<h:inputText value="#{userBean.email}">
<f:validator validatorId="com.bond.validator.EmailValidator"/>
</h:inputText>
其中validatorId的值为@FacesValidator注解中value中的字符串。
这样就完成了,不需要另外的xml等配置,非常方便。
分享到:
相关推荐
package composite component into jar maven3 jsf2 UBuntu glassfishv3.0.1 Emacs JDEE
NULL 博文链接:https://madihe-126-com.iteye.com/blog/266276
一步一步教你如何在jsf中自定义组件,简单易学,有程序完整代码。通过这个小demo你可以进一步开发复杂的组件。
NULL 博文链接:https://beanil.iteye.com/blog/904114
JSF创建自定义组件
1. JSF生命周期与组件概述 1.1 JSF生命周期 1.2 概述自定义组件 2. 简单实例 2.1 编码、解码 2.2 组件标签 2.3 使用自定义组件 2.4 自定义Renderer
JSF自定义组件学习的好教材
JSF2.0实战 - 4、自定义组件 示例代码
创建JSF自定义组件
针对使用JSF构建的系统中经常遇到的大量的分页查询问题。结合JSF自定义呈现器组件技术实现分页查询呈现 器,从而迭到显示逻辑和业务逻辑的分离、代码重用以及易于维护的目的。
教你如何编写属于自己的JSF程序
NULL 博文链接:https://qianliuyuan123.iteye.com/blog/660610
jsf自定义组件的框架,未完成请勿下载.....
jsf官方实现默认是不支持multipart/form-data类型的表单的,为了使jsf能够解析multipart/form-data表单的数据,我参考了myfaces1.1的方式,然后按照commons-fileupload1.2重构了部分代码(myfaces1.1使用的是commons...
ADF 11g:自定义JSF Validator 全文参见 http://blog.csdn.net/ygj26/article/details/8314708
JSF中文教程JSF中文教程JSF中文教程JSF中文教程
jsf 中文文档jsf 中文文档jsf 中文文档jsf 中文文档
JSF常用注解,常见的JSF注解的使用方法及其解释。
JSF入门详细资料(PDF),包括JSF入门中文版,JSF Web应用实战开发,以及JSF2,JSF入门必配学习资料
JSF2 richfaces 中文文档