六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 37|回复: 0

struts 验证框架 使用

[复制链接]

升级  70%

7

主题

7

主题

7

主题

童生

Rank: 1

积分
35
 楼主| 发表于 2013-2-7 14:59:27 | 显示全部楼层 |阅读模式
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>  
 
2. 配置ApplicationResource.properties(eclipse默认struts的根目录)
将validator-rules.xml中   errors.required={0} is required.   errors.minlength={0} can not be less than {1} characters.   errors.maxlength={0} can not be greater than {1} characters.   errors.invalid={0} is invalid.   errors.byte={0} must be a byte.   errors.short={0} must be a short.   errors.integer={0} must be an integer.   errors.long={0} must be a long.   errors.float={0} must be a float.   errors.double={0} must be a double.   errors.date={0} is not a date.   errors.range={0} is not in the range {1} through {2}.   errors.creditcard={0} is an invalid credit card number.   errors.email={0} is an invalid e-mail address.的信息copy到ApplicationResource.properties资源文件中  
 
3. 创建Form
继承于ValidatorForm,不用reset 和 validate方法public class UserForm extends ValidatorForm {    private String uname;    private String upass;    public String getUname() {        return uname;    }    public void setUname(String uname) {        this.uname = uname;    }    public String getUpass() {        return upass;    }    public void setUpass(String upass) {        this.upass = upass;    }} 4. 设置struts-config.xml文件中的validate=false
 
5. 新建validation.xml文件,在validation.xml中配置验证信息
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0.1//EN" "validator_1_0_1.dtd" ><form-validation>    <formset>        <!-- name:属性对应struts-config.xml中FormBean的名字 -->        <form name="userForm">        <!-- field:要验证的字段,即属性,depends:依赖的验证规则 -->            <field property="uname" depends="required">                <!-- arg0:在资源文件中配置错误消息的{0}参数值-->                <!-- errors.uname是资源文件中的key -->                <arg0 key="errors.uname"/>            </field>        </form>    </formset></form-validation>  
 
6. 实现客户端的javascript验证
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%@taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %><html>  <head>    <title>My JSP 'index.jsp' starting page</title>  </head>  <body>    <html:form action="login" >        用户名:<html:text property="uname"></html:text><br>        密  码:<html:text property="upass"></html:text><br>        <html:submit value="登录"></html:submit>    </html:form>    <html:javascript formName="userForm"/>  </body></html> 

经测试OK
 
 
 
 
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表