struts的validation.xml为何只是正则表达不起作用

04-09-01 rikky
我的LoginAction extends Action,LoginForm extends ValidatorForm

现在在我的validation.xml中有一下一段验证

<formset>

<form name="LoginForm">

<field property="username" depends="required,maxlength,mask">

<arg0 key="LoginForm.username"/>

<arg1 name="maxlength" key="${var:maxlength}" resource="false"/>

<var>

<var-name>maxlength</var-name>

<var-value>2</var-value>

</var>

<var>

<var-name>mask</var-name>

<var-value>^[0-9a-zA-Z]*$</var-value>

</var>

</field>

</form>

</formset>

现在的问题是:此时,required,maxlength能起作用,而mask就是不起作用。

例如:你在页面上输入

空 ---〉 提示 username is required

'aaaaa'---> 提示 username 的长度不能超过2位

但是你如果输入'!~' ---->验证既然通过,或者说验证没有起到作用,不报错

说明:我几乎一模一样的代码在另外的project中能正确运行,没有任何问题

请教各位,谢谢

rikky
2004-09-01 08:55
我的validation.xml内容如下

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!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>
  <global>
		<!-- Custom Validator -->
  </global>

  <formset>
                 <!-- Form for Validation example -->
    <form name="LoginForm">                    
    <field property="username"   
           depends="required,maxlength,mask">
    <arg0 key="LoginForm.username"/>
    <arg1 name="maxlength" key="${var:maxlength}" resource="false"/>
    <var>
	<var-name>maxlength</var-name>
	<var-value>20</var-value>
    </var>					
    <var>
          <var-name>mask</var-name>
          <var-value>^[0-9a-zA-Z]*$</var-value>
    </var>			
   </field>                                          
   </form>
 </formset>
</form-validation>
<p>

猜你喜欢