struts 1.x 动态验证框架

本文介绍如何在 Struts 中配置动态验证框架,包括配置文件 validator-rules.xml 和 validation.xml 的设置,以及如何在 Struts_config.xml 中启用验证框架,并展示了如何在 Action 中配置 validate 属性为 true。此外,还提供了服务器端和客户端验证的例子。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引用:http://hi.baidu.com/xuchao_duizhang/blog/item/83ccda11769a7dcba7ef3ff0.html

1. 在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>
validator-rules.xml为规则,略

validation.xml为自己需要验证的表单信息

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!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="loginForm">
<field property="username" depends="required">
<msg name="required" key="errors.required.username" />
</field>
<field property="password" depends="required">
<msg name="required" key="errors.required.password" />
</field>
<field property="type" depends="required">
<msg name="required" key="errors.required.type" />
</field>
</form>
</formset>
</form-validation>

2.在Struts_config.xml 中配置 错误提示信息
动态验证框架<message-resources parameter="MessageResources_CN" />
为显示中文信息,使用native2ascii命令,把MessageResources.properties
编码为 utf-8 个格式的MessageResources_CN.properties
目录结构:


提示信息:


3.Actoin的基本配置信息,validate设为true
<action attribute="loginForm" input="/login.jsp" name="loginForm"
path="/login" scope="request" type="com.jiaowu.struts.action.LoginAction"
validate="true">
<set-property property="cancellable" value="true" />
<forward name="loginSuccess_stu" path="/stu/stuMain.jsp" />
<forward name="loginFail" path="/login.jsp" />
</action>
同是,ActionForm 不能重写reset和validate方法,否则会出错

4.服务器端验证,普通struts标签,提示通过 <html:errors>显示
<html:form action="/login">
学生<html:radio property="type" value="stu"/>|
教师<html:radio property="type" value="tea"/><br>
<html:errors property="type"/><br/>
用户名 : <html:text property="username"/><html:errors property="username"/><br/>
密码 : <html:password property="password"/><html:errors property="password"/><br/>
<html:submit value="登陆"/><html:cancel value="取消"/>
</html:form>


5.客户端验证,自动生成js,极为强大
<html:javascript formName="loginForm"/>
<html:form action="/login" onsubmit="return validateLoginForm(this);">
学生<html:radio property="type" value="stu"/>|
教师<html:radio property="type" value="tea"/><br>
<html:errors property="type"/><br/>
用户名 : <html:text property="username"/><html:errors property="username"/><br/>
密码 : <html:password property="password"/><html:errors property="password"/><br/>
<html:submit value="登陆"/><html:cancel value="取消"/>
</html:form>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值