Struts2 验证框架不起作用的几种可能

本文详细解析了Struts2验证框架无法生效的常见原因,包括命名约定、配置文件错误、字段名称一致性、重复参数配置、错误信息显示方式及Action类继承问题,并通过实例说明了错误配置导致的问题及解决方案。
Struts2 验证框架不起作用的几种可能 
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.最主要的一个可能:如果你的Action类没有继承ActionSupport类,就不会进行页面流程的自动跳转。 



除了上述的几个可能以外,还一个就是一定要把配置验证文件放到Action同一个目录下,  还一个是actionAlias的命名问题

一定要区分actionAlias和action方法名 
如: 
<action name="savexxx" class="xxx" method="save"> 
name定义的是actionAlias 
method定义的是action方法名 

我把验证xml文件名字错用成了xxxAction-save-validation.xml, 
死活不能验证 
改用xxxAction-savexxx-validation.xml后,正常了 
汗呀 
耽误了一下午时间,郁闷。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值