首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

JSF入门十一(基准验证器)

2012-09-22 
JSF入门十一(标准验证器)本文参考http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId

JSF入门十一(标准验证器)

本文参考

http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=2630

?

当应用程序要求使用者输入数据时,必然考虑到使用者输入数据之正确性,对于使用者的输入必须进行检验,检验必要的两种验证是语法检验(Synatic Validation)与语意检验(Semantic Validation)。
语法检验是要检查使用者输入的数据是否合乎我们所要求的格式,最基本的就是检查使用者是否填入了栏目值,或是栏目值的长度、大小值等等是否符合要求。语意检验是在语法检验之后,在格式符合需求之后,我们进一步验证使用者输入的数据语意上是否正确,例如检查使用者的名称与密码是否匹配。

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%><%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%><%@page contentType="text/html;charset=GB2312"%><html><head><title>验证器示范</title></head><body><f:view><h:messages layout="table" style="color:red" /><h:form><h3>请输入您的名称</h3><h:outputText value="#{user.errMessage}" /><p>名称: <h:inputText value="#{user.name}" required="true" /><p>密码: <h:inputSecret value="#{user.password}" required="true"><f:validateLength minimum="6" /></h:inputSecret></p><p><h:commandButton value="送出" action="#{user.verify}" /></p></h:form></f:view></body></html>

?

在<h:inputText>、</h:inputSecret>中,我们设定了required属性为true,这表示这个栏目一定要输入值,我们也在</h:inputSecret>设定了<f: validateLength>,并设定其minimum属性为6,这表示这个栏目最少需要6个字符。
这一次在错误信息的显示上,我们使用<h:messages>标签,当有验证错误发生时,相关的错误信息会收集起来,使用<h:messages>标签可以一次将所有的错误信息显示出来。

?

JSF提供了三种标准验证器:<f:validateDoubleRange>、<f:validateLongRange>、<f:validateLength>,您可以分别查询它们的 Tag Library Documentation,了解他们有哪些属性可以使用,或者是参考 Using the Standard Validators 这篇文章中有关于标准验证器的说明。

热点排行