validation简单验证(1)

来源:互联网 发布:硬质合金的重量算法 编辑:程序博客网 时间:2024/05/22 05:18

 验证:()
以验证注册为例:
reg.jsp
<%@ page language="java" pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<html>
 <head>
  <title>JSP for DynaActionForm form</title>
 </head>
 <body>
  <html:form action="/reg">
   phone : <html:text property="phone"/><html:errors property="phone"/><br/>
   email : <html:text property="email"/><html:errors property="email"/><br/>
   name : <html:text property="name"/><html:errors property="name"/><br/>
   <html:submit/><html:cancel/>
  </html:form>
 </body>
</html>
-------------------------------------------------------------------------------------------------------
struts-conf.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

<struts-config>
  <data-sources />
  <form-beans >
    <form-bean name="regForm" type="org.apache.struts.validator.DynaValidatorForm">//这是一定要改为:                            //type="org.apache.struts.validator.DynaValidatorForm"否则验证将无法正常显示。
                  
      <form-property name="phone" type="java.lang.String" />
      <form-property name="email" type="java.lang.String" />
      <form-property name="name" type="java.lang.String" />
    </form-bean>

  </form-beans>

  <global-exceptions />
  <global-forwards />
  <action-mappings >
    <action
      attribute="regForm"
      input="/reg.jsp"
      name="regForm"
      path="/reg"
      scope="request"
      type="prj10.action.RegAction" />

  </action-mappings>

  <message-resources parameter="prj10.ApplicationResources" />
  <!-- 以插件形式注册框架中的验证文件 validator-rules.xml,validation.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>
</struts-config>
------------------------------------------------------------------------------------------------------
ApplicationResources.porper

 errors.required={0} is required.
  errors.email={0} is an invalid e-mail address.
  errors.long={0} must be number.
-----------------------------------------------------------------------------------------------------
validation.xml

<!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="regForm">
   <field property="name" depends="required"><!--name:指表单的名字: -->
    <msg name="required" key="errors.required" /><!--name:验证规则的名字:depends。                                                                                  key="errors.required" 资源文件中的名字 -->
    <arg0 name="required" key="name" resource="false" />
   </field>

   <field property="email" depends="required,email">
    <msg name="required" key="errors.required" />
    <arg0 name="required" key="email" resource="false" />
    <msg name="email" key="errors.email" />
    <arg0 name="email" key="email" resource="false"/>
    
   </field>
   <field property="phone" depends="required,long">
    <msg name="required" key="errors.required" />
    <arg0 name="required" key="phone" resource="false" />
    <msg name="long" key="errors.long" />
    <arg0 name="long" key="phone" resource="false"/>
    
   </field>
  </form>
 </formset>
</form-validation>
--------------------------------------------------------------------------------------------------------------------------

说明:validation.xml是一个验证文件,调用validator-rules.xml中的验证规则。
主要步骤;
1、根据表单写验证文件validation.xml和资源文件ApplicationResources.porper。
2、将上面的文件在配制文件中注册。

3、配制文件中将<form-bean>中的内容改为:<form-bean name="regForm" type="org.apache.struts.validator.DynaValidatorForm">

原创粉丝点击