校验器:
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" />
<set-property property="stopOnFirstError" value="true" />
</plug-in>
validator-rules.xml:
一般来说写规则
<validator name="required"
classname="org.apache.struts.validator.FieldChecks"
method="validateRequired"
methodParams="java.lang.Object,
org.apache.commons.validator.ValidatorAction,
org.apache.commons.validator.Field,
org.apache.struts.action.ActionMessages,
javax.servlet.http.HttpServletRequest"
msg="errors.required"/>
errors.required要在ApplicationResources.properties中定义
validation.xml:
一般来说写条件
<form name="loginForm">
<field property="username" depends="required,minlength">
<arg key="label.login.username" position="0"/>
<arg name="minlength" key="${var:minlength}" resource="false" position="1"/>
<var>
<var-name>minlength</var-name>
<var-value>5</var-value>
</var>
</field>
</form>
FormBean请继承:ValidatorForm
ApplicationResources_zh_CN.properties:
可以加参数{0},在validation.xml中绑定
errors.required={0}不能为空,必须输入
errors.minlength={0}的长度不能小于{1}
需要 JavaScript的时候:
form上要加上
onsubmit="return validateLoginForm(this)"
jsp里加上这个会生成JavaScript代码
这个formName是在validation.xml中定义的。
<html:javascript formName="loginForm"/>
全部搞定
闽公网安备 35060202000074号