没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Validator --> FormBean表单验证 --> <form name="name属性对应">
ValidatorActionForm --> action验证 --> <form name="path属性对应">
ValidatorActionform
是验证框架针对action的
ValidatorForm 是验证表单的
如果ActionForm 继承了ValidatorForm
那么以后的操作中就不用写验证了.
1、在webroot/web-inf文件夹下面找到struts的配置文件struts-config.xml,在文件的最后面添加验证插件的配置
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml, /WEB-INF/validation.xml"/>
</plug-in>
2、我们看到指向两个配置文件,其中的validator-rules.xml是程序自带的,一般不需要修改(除非你想自定义一些规则)。
validation.xml文件是需要自己创建的,以下可以看到一个最简单的配置形式:
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN" "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">
<form-validation>
<formset>
<form name="adminForm">
<field property="userName" depends="required">
<arg0 key="errors.userName"/>
</field>
</form>
</formset>
</form-validation>
ValidatorActionForm --> action验证 --> <form name="path属性对应">
ValidatorActionform
是验证框架针对action的
ValidatorForm 是验证表单的
如果ActionForm 继承了ValidatorForm
那么以后的操作中就不用写验证了.
1、在webroot/web-inf文件夹下面找到struts的配置文件struts-config.xml,在文件的最后面添加验证插件的配置
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml, /WEB-INF/validation.xml"/>
</plug-in>
2、我们看到指向两个配置文件,其中的validator-rules.xml是程序自带的,一般不需要修改(除非你想自定义一些规则)。
validation.xml文件是需要自己创建的,以下可以看到一个最简单的配置形式:
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN" "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">
<form-validation>
<formset>
<form name="adminForm">
<field property="userName" depends="required">
<arg0 key="errors.userName"/>
</field>
</form>
</formset>
</form-validation>
注意的几点:
一是文件头的部分,请直接拷贝程序自动生成的validator-rules.xml的头部分,不要相信网上那些乱七八糟的(甚至有人说这两个文件的头不一样),每个人安装的版本不一样,所以支持的.dtd文件可能也不是一个版本的,所以拷贝程序生成的是最正确的;
二是参数的说明,基本应该能看懂,但还是说一下adminForm就是ActionForm的名字,可以去struts-config.xml看看是不是一样的,userName就是要验证的Form里面字段的名字,depends="required"指向的是验证规则文件validator-rules.xml里面指定的规则的名字,arg对应depends,depends有几个参数,后面就对应几个arg,depends的不同参数间用逗号隔开,arg的key指定的是要用javascript显示给用户的提示信息(注意的是在validator-rules.xml里面已经有一个msg字段指定required规则的显示字串,最终显示的信息是validation.xml中arg的key指定的信息资源加上validator-rules.xml的required规则的msg字段的提示信息),如果在arg的key属性后面再添加一个resource=”false”属性,那么显示的信息将不读取资源文件,直接显示key里面的内容。
3、下面说说资源文件
在/FuncTest/src/com/functest/struts/(其中FuncTest是工程名)文件夹下可以看到ApplicationResources.properties文件,这是系统自动生成的,我们需要在同一目录自己建两个文件ApplicationResources_en_US.properties和ApplicationResources_zh_CN.properties,分别用于存放中英文资源(不要认为系统默认带了一个英文的就偷懒,有时候程序认不出来默认的那个,因此就不用他好了)。
先看ApplicationResources_en_US.properties文件(英文):
# Resources for parameter 'com.yourcompany.struts.ApplicationResources'
# Project myvalidation
errors.userName=User name
errors.required={0} is required
再看ApplicationResources_zh_CN.properties(中文):
# Resources for parameter 'com.yourcompany.struts.ApplicationResources'
# Project myvalidation
errors.userName=\u7528\u6237\u540d
errors.required={0}\u4e0d\u80fd\u4e3a\u7a7a\uff01
那么从英文怎么转到中文里面的unicode码呢,下面介绍一个小办法:
在D盘新建两个文件a.txt和b.txt,其中在a.txt里面写“不能为空”;
运行cmd命令,转到D盘,输入“native2ascii a.txt b.txt”运行;
(*^__^*) 嘻嘻……,去b.txt里面拷贝自己需要的到配置文件就好了。
4、jsp文件
关键的一步了,就是表现层jsp文件
<table>
<html:form action="/admin" onsubmit="return validateAdminForm (this);">
<tr>
<td colspan="2" height="20px"><h4>
<html:errors property="userName"/>
</h4></td>
一是文件头的部分,请直接拷贝程序自动生成的validator-rules.xml的头部分,不要相信网上那些乱七八糟的(甚至有人说这两个文件的头不一样),每个人安装的版本不一样,所以支持的.dtd文件可能也不是一个版本的,所以拷贝程序生成的是最正确的;
二是参数的说明,基本应该能看懂,但还是说一下adminForm就是ActionForm的名字,可以去struts-config.xml看看是不是一样的,userName就是要验证的Form里面字段的名字,depends="required"指向的是验证规则文件validator-rules.xml里面指定的规则的名字,arg对应depends,depends有几个参数,后面就对应几个arg,depends的不同参数间用逗号隔开,arg的key指定的是要用javascript显示给用户的提示信息(注意的是在validator-rules.xml里面已经有一个msg字段指定required规则的显示字串,最终显示的信息是validation.xml中arg的key指定的信息资源加上validator-rules.xml的required规则的msg字段的提示信息),如果在arg的key属性后面再添加一个resource=”false”属性,那么显示的信息将不读取资源文件,直接显示key里面的内容。
3、下面说说资源文件
在/FuncTest/src/com/functest/struts/(其中FuncTest是工程名)文件夹下可以看到ApplicationResources.properties文件,这是系统自动生成的,我们需要在同一目录自己建两个文件ApplicationResources_en_US.properties和ApplicationResources_zh_CN.properties,分别用于存放中英文资源(不要认为系统默认带了一个英文的就偷懒,有时候程序认不出来默认的那个,因此就不用他好了)。
先看ApplicationResources_en_US.properties文件(英文):
# Resources for parameter 'com.yourcompany.struts.ApplicationResources'
# Project myvalidation
errors.userName=User name
errors.required={0} is required
再看ApplicationResources_zh_CN.properties(中文):
# Resources for parameter 'com.yourcompany.struts.ApplicationResources'
# Project myvalidation
errors.userName=\u7528\u6237\u540d
errors.required={0}\u4e0d\u80fd\u4e3a\u7a7a\uff01
那么从英文怎么转到中文里面的unicode码呢,下面介绍一个小办法:
在D盘新建两个文件a.txt和b.txt,其中在a.txt里面写“不能为空”;
运行cmd命令,转到D盘,输入“native2ascii a.txt b.txt”运行;
(*^__^*) 嘻嘻……,去b.txt里面拷贝自己需要的到配置文件就好了。
4、jsp文件
关键的一步了,就是表现层jsp文件
<table>
<html:form action="/admin" onsubmit="return validateAdminForm (this);">
<tr>
<td colspan="2" height="20px"><h4>
<html:errors property="userName"/>
</h4></td>
剩余6页未读,继续阅读
资源评论
mohaining
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功