struts ValidatorForm的数据验证常见错误分析

1 看项目中是否存在validtor_rules.xml文件

2 看项目中的validator.xml中的配置相关项是否与表单中的属性名称相一致.例如表单的名称.文本框的属性名称.

3 看validator.xml和validator-rules.xml与struts的包是否兼容,应该是高版本的配置高版本的jar包

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,才最后把问题解决。

4.看struts-config.xml文件中是否配置validator-rulesl.xml和validtor.xml插件.

5看struts-config.xml文件中的<form-bean/>和<action />配置是否成功.

6 查看bean和action文件是否编写.

7 看资源文件中相关配置的信息是否存在

8程序通过还没显示错误信息,看jsp文件中是否有<html:errors/>标签

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值