这几日公司的项目准备使用struts的验证,所以就看了一下写在这里希望对各位有帮助,同时希望各位多讨论:
validation.xml文件的文档结构是由validator_1_1_3.dtd文件定义,其文件头部内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!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>和<global>子元素。一般只需要定义<formset>元素,<formset>元素定义格式如下:
<formset>
<constant></constant>
<form></form>
</formset>
其中<constant />为可选子元素,而<form />子元素至少需要出现一次。<form />子元素的定义格式如下:
<form name="">
<field property=""></field>
..............
<field property="" depends="" page="" indexedListProperty=""></field>
</form>
其中属性描述如下:
name:指定了表单的名字与配置文件中的form-bean的name相同;
field:对应表单中验证的字段;
property:对应ActionForm的属性;
depends:指定验证规则,例如:required、maxlength等;
page:ActionForm若是跨页表单,则与表单中的page属性对应。
field应该是你验证信息实现的部分:
例如你想进行email验证:
<field property="email" depends="required, email">
<arg0 key="UserForm.email" />
</field>
其中key对应的是资源文件中的键值,当然为了得到正确且可读的信息,开发人员还需要在资源文件中添加errors.required等默认的错误信息
,具体操作如下:errors.email = {0}是无效e-mail地址
在Struts中的验证机制还提供了扩展,开发人员可以添加自定义的验证规则,例如可添加文件类型的验证。此时需要编写的Java类、在
validator-rules.xml添加该验证规则以及添加验证的js。
validation.xml文件的文档结构是由validator_1_1_3.dtd文件定义,其文件头部内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!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>和<global>子元素。一般只需要定义<formset>元素,<formset>元素定义格式如下:
<formset>
<constant></constant>
<form></form>
</formset>
其中<constant />为可选子元素,而<form />子元素至少需要出现一次。<form />子元素的定义格式如下:
<form name="">
<field property=""></field>
..............
<field property="" depends="" page="" indexedListProperty=""></field>
</form>
其中属性描述如下:
name:指定了表单的名字与配置文件中的form-bean的name相同;
field:对应表单中验证的字段;
property:对应ActionForm的属性;
depends:指定验证规则,例如:required、maxlength等;
page:ActionForm若是跨页表单,则与表单中的page属性对应。
field应该是你验证信息实现的部分:
例如你想进行email验证:
<field property="email" depends="required, email">
<arg0 key="UserForm.email" />
</field>
其中key对应的是资源文件中的键值,当然为了得到正确且可读的信息,开发人员还需要在资源文件中添加errors.required等默认的错误信息
,具体操作如下:errors.email = {0}是无效e-mail地址
在Struts中的验证机制还提供了扩展,开发人员可以添加自定义的验证规则,例如可添加文件类型的验证。此时需要编写的Java类、在
validator-rules.xml添加该验证规则以及添加验证的js。