struts 下validation 的使用

首先启用Validator插件

虽然Validator框架是与Struts封装在一起提供的,但在默认状况下Validator并不被启用。为了启用Validator,要向你的应用程序的struts-config.xml文件中添加下面的插件定义。

 

<!-- Validator Configuration -->
<plug-in className="org.apache.struts
.validator.ValidatorPlugIn">
  <set-property property="pathnames"
               value="/WEB-INF/
  validator-rules.xml, /WEB-INF/

  validation.xml"/>
</plug-in>

然后创建Form Bean

为了使用Validator,你的应用程序的Form Bean必须归到Validator的ActionForm的某一子类,而不是ActionForm本身。

Validator的ActionForm子类提供了ActionForm的validate( )方法(它嵌入到Validator框架中)的实施过程。

你不必从头编写验证代码并把它投入validate( )方法中,相反,可以完全忽略该方法,因为Validator为你提供了验证代码。

 

import org.apache.struts.validator.ValidatorForm;

 

 

即是你的formbean 继承的是 ValidatorForm 而不是actionform

例如: public class LogForm extends ValidatorForm {}

这个类与你不是用Validator所创建的类相似,但它提供ValidatorForm而不是ActionForm。

这个类也不提供ActionForm的空reset( )和validate( )方法的实施过程,因为ValidatorForm提供了相应过程

 

在struts-config.xml定义好要使用的formbean

<form-beans> <form-bean name="logForm" type="com.LogForm"/> </form-beans>

 

然后在validation.xml 配置要验证的formbean

 

<!DOCTYPE form-validation 
PUBLIC "-//Apache Software Foundation//
       DTD Commons Validator Rules
       Configuration 1.0//EN"
       "http://jakarta.apache.org/
      commons/dtds/validator_1_0.dtd">


<form-validation>
  <formset>
    <form name="LogForm">
            <field property="userName"
                    depends="required,minlength">
                <arg0  key="prompt.userName"/>
                <arg1  name="minlength" key="${var:minlength}" resource="false"/>
                <!--
                <var>
                <var-name>mask</var-name>
                <var-value>${userName}</var-value>
                </var>
                -->
                <var>
                <var-name>minlength</var-name>
                <var-value>5</var-value>
                </var>
               
               
            </field>
           
            <field property="userPass"
                    depends="required">
                <arg0   key="prompt.userPass"/>
            </field>

        </form>
 
    </formset> 
</form-validation>
其中key值 为引用 application.propertis 文件的 引用名.
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值