<form-beans>                       
        <form-bean name="emailForm" type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="email" type="java.lang.String"/>
</form-bean>
    </form-beans>  <!-- ========== Action Mapping Definitions ============================== -->
  <action-mappings>
    <!-- Say Hello! -->
    <action    path      = "/HelloJack"
               type      = "emailAction"
               name      = "emailForm"
               scope     = "request"
               validate  = "true"
               input     = "/jackstudio.jsp"
     >
        <forward name="SayHello" path="/jackyeah.jsp" />
    </action>
  </action-mappings>
  <message-resources parameter="application"/>      <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validator.xml"/>
      </plug-in>validator.xml中有这样一段:<form name="emailForm">
         <field property="email" depends="required,minlength">
               <arg0 key="email.address"/>
               <arg1 name="minlength" key="${var:minlength}" resource="false"/>
                     <var>
                       <var-name>minlength</var-name>
                       <var-value>5</var-value>
                     </var>
         </field>       
      </form>applicaton.properties 文件:email.is.good=this is ok email
errors.required={0} is required.
errors.minlength={0} can not be less than {1} characters.
情况是每次我不输入数据就提交时,错误提示为:null is is required.
输入的数据少于5个字符时总是有:null can not be less than null characters.
为什么这个不起作用呢?
               <arg0 key="email.address"/>
               <arg1 name="minlength" key="${var:minlength}" resource="false"/>
                     <var>
                       <var-name>minlength</var-name>
                       <var-value>5</var-value>

解决方案 »

  1.   

    验证并没有失败,而是因为你有验证,所以才会出现提示。<arg0 key="email.address"/>中的email.address在applicaton.properties 文件中没有相应的健值对。
    在applicaton.properties 文件中加上
    email.address=email地址就可以了。
      

  2.   

    我的properties 问件有对应的键值啊.
    还有就是连 <arg1 name="minlength" key="${var:minlength}" resource="false"/>
                         <var>
                           <var-name>minlength</var-name>
    也读不出来是什么原因呢??