关于struts的validations.xml自动校验时应注意的问题

昨天弄了一宿,就是因为这个关于validations.xml的自动校验,感觉是挺简单的东西,可是却因为一个不显眼的地方耽误了我很多时间。

代码实例:写了一个由myeclipse6.0.1自带的struts实例,在struts-config.xml文件中加入了<plug-in>自动校验标签,以实现validation的自动校验功能。
然后在WEB-INF下创建了一个validations.xml文件,加入了以下代码:

< form-validation >
 
< formset >
  
< form  name ="loginForm" >
   
< field  property ="userName"  depends ="required" >
    
< arg  key ="loginForm.userName" />
   
</ field >
  
</ form >
 
</ formset >
</ form-validation >

然后在相应的properties文件中加入了key的中文提示,部署运行,用户名不填时,发现怎么也不走这个验证,直接就进入了成功页面。最后,经过了多个小时的排错,发现原因出在FormBean中,在strtus向导界面建立时,它的默认是钩选上validate和reset方法的,如图:

关于struts的validations.xml自动校验时应注意的问题_第1张图片

如果FromBean中有validate方法,则myeclipse是自动认为采用的是手工校验,而不是自动校验,因此不会去调用自动校验的<plug-in>标签。在使用自动校验时应把validate方法钩去,或在FormBean中删除此方法既可。
 

你可能感兴趣的:(关于struts的validations.xml自动校验时应注意的问题)