天宇的JAVA空间站


f:validateLongRange - JSF标签 f:validateLongRange 的使用方法

08-03-11 22:16Update

LifevV.COM编辑部

f:validateLongRange是JSF标准验证组件之一,它验证用户输入是否为处于有效范围之内的整数(包括整形,长整形等)。

我们在
>> JSF Validator入门基础篇 - JSF Validator的介绍与使用
以及
>> JSF Validator进阶篇 - 自定义JSF Validator
2篇文章中已经详细地介绍了JSF Validator(验证机制)的原理,JSF标准Validator的基本用法,以及自定义Validator的开发方法等。

本文不对JSF Validator做详细说明,只是举例说明f:validateLongRange标签的用法。

f:validateLongRange标签的概要


Validator标签名:f:validateLongRange
  属性名:
      maximum="最大值"
      minimum="最小值"
Validator ID:javax.faces.LongRange
Validator 类:javax.faces.validator.LongRangeValidator
输入值的范围验证。
输入值必须为Number(数值)类型或者可以转换为Long类型的值

f:validateLongRange验证对象组件:
f:validateLongRange可以对所有输入类型的组件的输入值加以验证,如下:
h:inputHidden
h:inputSecret
h:inputText
h:inputTextarea

h:selectBooleanCheckbox
h:selectManyCheckbox
h:selectManyListbox
h:selectManyMenu
h:selectOneListbox
h:selectOneMenu
h:selectOneRadio

f:validateLongRange的使用方法
f:validateLongRange必须被包含在上述输入组件之内。例:
<输入组件>
  <f:validateLongRange maximum="2500" minimum="800" />
</输入组件>


f:validateLongRange标签的使用例


<%@ 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="amount" value="#{mybean.amount}" required="true">
  <f:validateLongRange maximum="2500" minimum="800" />
 </h:inputText>
 <h:message for="amount"></h:message>
</f:view>

显示:略。

若对amount输入大于2500或者小于800的整数或者其他非整数的值,则显示错误信息,并回到原来的页面。


这里使用 <h:message for="amount"></h:message> 来显示验证失败时的错误信息,若需了解JSF的错误消息处理机制与方法,请参考我们另外的一篇文章:
>> JSF全面理解之消息处理  

如果你还不了解怎么使用JSF开发,请阅读:
>> JSF 5分钟入门:Hello World!

如果你想了解JSF更多更深的知识,请阅读:
>> 深入了解JSF
>> 深入了解JSF(二):从JSF的Lifecycle看JSF对页面的处理机制和流程

其他参考资料


Sun JavaServer Faces API Specifications
Sun JavaServer Faces Tag Library Documentation
 
Copyright ©2006-2010 lifevv.com. All Rights Reserved
POWERED BY @pmplat.syboos.com