我们在
>>
JSF Validator入门基础篇 - JSF Validator的介绍与使用
以及
>>
JSF Validator进阶篇 - 自定义JSF Validator
2篇文章中已经详细地介绍了JSF Validator(验证机制)的原理,JSF标准Validator的基本用法,以及自定义Validator的开发方法等。
本文不对JSF Validator做详细说明,只是举例说明f:validateLength标签的用法。
f:validateLength标签的概要
Validator标签名:f:validateLength
属性名:
maximum="最大值"
minimum="最小值"
Validator ID:javax.faces.Length
Validator 类:javax.faces.validator.LengthValidator
输入值的长度验证。
输入值必须为String(字符串)或者可以转换为String类型的值
f:validateLength验证对象组件:
f:validateLength可以对所有输入类型的组件的输入值加以验证,如下:
h:inputHidden
h:inputSecret
h:inputText
h:inputTextarea
h:selectBooleanCheckbox
h:selectManyCheckbox
h:selectManyListbox
h:selectManyMenu
h:selectOneListbox
h:selectOneMenu
h:selectOneRadio
f:validateLength的使用方法
f:validateLength必须被包含在上述输入组件之内。例:
<输入组件>
<f:validateLength maximum="16" minimum="8" />
</输入组件>
f:validateLength标签的使用例
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<f:view>
<h:inputText id="userId" value="#{mybean.userId}" required="true">
<f:validateLength maximum="16" minimum="8" />
</h:inputText>
<h:message for="userId"></h:message>
</f:view>
显示:略。
若对userId输入长度大于16或者小于8的字符串,则显示错误信息,并回到原来的页面。
这里使用 <h:message for="amount"></h:message> 来显示验证失败时的错误信息,若需了解JSF的错误消息处理机制与方法,请参考我们另外的一篇文章:
>>
JSF全面理解之消息处理
如果你还不了解怎么使用JSF开发,请阅读:
>>
JSF 5分钟入门:Hello World!
如果你想了解JSF更多更深的知识,请阅读:
>>
深入了解JSF
>>
深入了解JSF(二):从JSF的Lifecycle看JSF对页面的处理机制和流程