orsen成长录

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  3 随笔 :: 2 文章 :: 0 评论 :: 0 Trackbacks

2009年9月29日 #

一:form要继承validate以上的form类这样才可以,但是前台验证可以重写父类的validate方法
后台验证必须继承ValidatorForm或ValidatorActionForm,测试发现:如果只做前台验证的话,不论用那个都可以。
二:在struts-config.xml加入,加载Struts的动态验证模块。
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property property="pathnames"
          value="/org/apache/struts/validator/validator-rules.xml,
              /WEB-INF/validation.xml"/>
</plug-in>
三:在增加validation.xml文件,配置需要验证的Form表单。
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE form-validation PUBLIC
     "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.3.0//EN"
     "http://jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">
<form-validation>
    <formset>
  <form name="userInfoForm" >
   <field property="username" depends="required">
    // resource="false"说明不用Struts的资源文件,输出消息自己写
    //有多个Struts资源文件 bundle="这里是自愿文件的key值"
    <msg name="required" key="用户名必填" resource="false"/>
   </field>
   <field property="password" depends="required">
    <msg name="required" key="errors.required"/>
    //给资源文件赋值研究
    <arg key="errors.required" position="0" name="password"/>
   </field>
  </form>
    </formset>
</form-validation>
四:网页端,在网页中应用。
注意:form一定要用html:form包装,负责不能通过自动验证
<!--使用生成生成脚本验证该表单-->
<html:form action="userinfo.do?method=login"  method="post"  onsubmit="return validateUserInfoForm(this)">
 用户名称:<input type="text" name="username"><br>
 拥护密码:<input type="password" name="password"><br>
 <input type="submit" value="登陆"><br>
</html:form>
<!--动态生成验证脚本-->
<html:javascript formName="userInfoForm"/>
posted @ 2009-09-29 20:19 Orsen 阅读(134) | 评论 (0)编辑 收藏