Validator验证框架使用教程

来源:百度文库 编辑:神马文学网 时间:2024/04/28 11:04:57
2006年10月17日 星期二 10:09
Terry原创,转载请说明作者及出处。
使用平台:Eclipse3.2+MyEclipse5.01GA
首先,Validator验证框架最好要在Struts1.2下使用,当然在Struts1.1下也是可行的,只是在Struts1.2下能支持得更好。
在Struts-Config.xml配置文件里添加插件,或是把下面的文本内容复制到Struts-Config.xml中:



在MyEclipse下建立validation.xml的步骤如下:
在项目的根目录处点击鼠标右键,选择新建“XML(Basic Templates)”,在弹出的窗口中选择“Create XML file from a DTD file”下一步,将文件目录设置到WEB-INF下,文件名取为“validation.xml”下一步;在这里点击“Select XML Catalog entry”选项,并选择KEY名为“-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN”的选项,下一步;此处已经不需要再设置什么,直接点击“Finish”完成validation.xml的建立,通过这样的建立文件,在编辑过程中输入"<"符号后,编辑器就会自动查找与当前结构匹配的Validator标签。
下面介绍一下validation.xml配置文件的标签:
是总框架
是对Form里的数据进行配置
对一个ActionForm里的数据进行验证配置
这里配置一个属性的验证内容

定义一个变量的标签体,可以在里面具体设置变量的名称以及数值
对应Key里定义的变量名称

这里定义了信息变量后,会默认定义的信息变量。
在验证规则中大部分可以使用已经预定义好的规则,它们在validator-rules.xml里,当然我们自己也可以定义规则。
实例如下:







maxlength
10






maxlength
5







min
1


max
100








要想在ActionForm里应用上Validator框架,就必须继承ValidatorForm类;
在MyEclipse下新建ActionForm时可以将其SuperClass设置为“org.apache.struts.validator.ValidatorForm”
如果是已经建好的ActionForm要改为使用Validator验证需如下操作:
导入org.apache.struts.validator.ValidatorForm包,将类ActionForm扩展类从原先的ActionForm改为ValidatorForm
而原先的public ActionErrors validate(ActionMapping mapping,HttpServletRequest request)和
public ActionErrors validate(ActionMapping mapping, ServletRequest request)
以及Reset方法去除即可。
应用程序全局资源文件:ApplicationResources.properties
可以在文件里添加错误提示信息,格式为:
变量名:提示文本(注:若要使用中文信息则要在转换之前将中文的文本填写完,转换后文件名后需要加上_zh_CN才会被系统识别为简体中文)
内容如下:
employee.name=员工姓名
employee.sex=员工性别
employee.age=员工年龄
employee.money=期望薪金
errors.required={0}不能为空,请填写!
errors.integer={0}必需为一个整数值
errors.range={0}必需为1~100之间的一个数字
errors.maxlength={0}的最大数不能越过{1}!
注:若需要换行可以在文本后面加上"
";
以上的例子只是说明了资源文件的使用方法,但是如果就想这样来显示中文提示信息是不可行的,
转换的命令是:
native2ascii -encoding gb2312 ApplicationResources.properties ApplicationResources_zh_CN.properties
native2ascii命令是Java JDK目录下BIN目录里的一个可执行文件,若发现不能执行,请修改系统环境变量,即在Path变量里加入"X:\...\jdk1.5.1\bin;",修改完需要重新启动系统所配置的环境变量才可生效。
可将命令制作成批命令,注意:转换格式后,在工程里需要手动刷新文件,否则项目不会识别你所做的改动
到这里Validator验证框架的所有配置已经完成此时你只要在页面相应位置放入标签即可显示,这样是将所有的错误在同一个地方显示,若想实在在每个输入控件后面显示错误提示,就必须手动设置标签的属性,如: