校验方式一共两种
第一种:基本验证(对action的方法进行校验)
第二种:框架校验(基于XML配置方式)
一 校验流程:
1. 请求参数(表单数据
2. 进行验证
3. WorkFlow拦截器,检查是否有错误信息
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor
上述拦截器:name=”workflow”校验通过,继续向下走的情况下。
4 如果没有错误,继续调用动作
如果有错误信息,
<result name="input">
/error.jsp
</result>
二 框架校验:
1 定义action继承Actionsupport 或者实现Validateable接口
2 配置验证出错转向页面(配置name为input的result)
3 配置验证的xml文件
4 添加验证规则
:根元素
指定action中要校验的属性.name属性指定被验证表单字段的名字
请求发出—找到action—-给actiion赋值。根据xml名字找到和action对应的配置文件。然后把里面的validator来对应,就会得到相应的取值。
xml配置文件事例如下
<!-- ActionClassName-validation.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.3//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="username">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>username is not empty</message>
</field-validator>
</field>
<field name="password">
<field-validator type="stringlength">
<param name="minLength">6</param>
<param name="maxLength">8</param>
<message>password is not empty</message>
</field-validator>
</field>
<!--
<field-validator type="stringlength">
<param name="trim">true</param>
<param name="minLength">6</param>
<param name="maxLength">8</param>
<message>Password's length between 6 and 8.</message>
</field-validator>
-->
</validators>