struts2 验证框架validation.xml不起作用的原因

1. 命名是否符合约定: 
<actionClass>-validation.xml 
<actionClass>-<actionAlias>-validation.xml 
2.   validation.xml的标签是否正确,比如是否关闭所有标签(或者有错误的标签),是否多一个关闭标签等。注意:这方面错误没有任何提示, 只是验证不起作用。 
3.   fieldName 命名是否和jsp以及 action中的属性一致 如: 
       action中有userName 属性, 
       jsp 中有标签:<s:textfield name="userName"/> 
       validation.xml中需有:<field name="userName">...</field> 
       上述的三个userName一定要一致。 
4.检查是否在同一个field里面配置了重复的参数,重复的参数也可能会使你的信息显示不出来 
5.要记得验证框架所产生的错误信息被是写入到了fielderror里面去了,所以在需要显示错误信息的页面要用 
<s:fielderror cssStyle="FONT-WEIGHT: bold;color:yellow;font-size:14px;"></s:fielderror>标签 

不能用<s:actionerror/> 

6.LoginAction-validation.xml文件必须与Action类放在相同的目录下(以后一定要注意了!)

7.在struts.xml文件中的<action>标签中,必须包含<result name="input">和<result name="success"
>,否则会报找不到result的错误。 validation.xml校验不通过后,会默认返回  input所在 页面

8.最主要的一个可能:如果你的Action类没有继承ActionSupport类,就不会进行页面流程的自动跳转。 

你可能感兴趣的:(struts2,javaee)