struts中应用validator框架验证应注意的一个地方

这几天一直都比较郁闷,而大多数的郁闷是因为在struts中引入了validator框架来进行验证所引起的,虽然这个郁闷最终在今天被我彻底驱走了。
  现在就来谈谈我郁闷的地方,关于如何配置来将validator框架引入struts中这点不是我郁闷的地方,这个在网上也都有很好的资料, http://apin.xhschool.com/archives/2005/4495.shtml这个链接中谈的就很好。
 我谈的是经过以上正确的配置后,却仍然出现不了想要的效果,在控制台中出现如下:
org.apache.struts.validator.FieldChec
ks.validateRequired(java.lang.Object, org.apache.commons.validator.ValidatorActi
on, org.apache.commons.validator.Field, org.apache.struts.action.ActionErrors, j
avax.servlet.http.HttpServletRequest)之类的错误信息的问题。
  这个错误的原因是因为所使用的struts.jar与WEB-INF下的validator-rules.xml版本不一样而引起的,比如你使用的struts.jar包是最新的1.2.8(笔者今天刚下载的最新版本),而你的validator-rules.xml文件却是对应struts1.1或者更低版本的,如何知道validator-rules.xml的版本低呢?我们可以从validator-rules.xml中的开始几行可以看出来,如下所示:
<!DOCTYPE form-validation PUBLIC
          "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.1.3//EN"
          " http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd">
以上的版本为validator_1_1_3.dtd,是目前validator-rules.xml最高的版本,对应的struts。jar包也是比较高的,为1.2及以上的版本,在笔者为这个问题处于郁闷中时,使用的struts.jar为1.2以上,但是我使用的validator-rules.xml为validator_1_1_0.dtd,所以总是出现我上面说的那个错误信息,后来俺换了个版本低的struts.jar,结果验证可以成功,但是由于我的系统只能使用高版本struts的,所以没有办法,我只好去下了个高版本的validator-rules.xml,才最后把问题解决。
  为了这个问题的解决,我先是百度,没有结果(所以觉得百度还应该加油)!后来不得已google了一下,关于这个问题的帖子也少得可怜,好像也就只有2页或3页,但是只有一篇帖子对我产生了一点提示作用,这篇帖子还是E文写的,幸亏俺的E文现在还没有完全丢完,看懂了个大概,明白了问题可能是出在哪里。
希望以上写的这些能对应用validator框架进行验证的朋友能有所帮助,技术之道,远无止境,大家互相学习吧。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值