Struts2中validator校验器不起作用的情况

本文详细介绍了在Struts框架中使用正则表达式进行验证时遇到的问题及解决方法,包括XML文件配置、验证流程、以及正则表达式的正确应用。重点解决了将正则表达式参数名从expression更改为regex以确保验证功能正常工作的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

         1  xxx- validation.xml。其中xxx为需要验证的action,若要验证其中一个方法如:execute。 则命名为:xxx-execute-validation.xml。与action放在同一目录下。

         2  XML文件的头部不能弄错。

<?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE validators PUBLIC
          "-//Apache Struts//XWork Validator 1.0.3//EN"
          "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">

一个保险的方法是 将xwork-validator-1.0.3.dtd  单独取出,点进去,将头部直接复制过来。为防止断网后validator失效,还可以将xwork-validator-1.0.3.dtd 拷在本地,不过XML的地址需要相应变化。

         3 struts.xml 需要配置input 属性,当验证失效后,会将结果发往input

<result name="input">/login.jsp</result>

        4  regex失效,这才是我要说的,前面的情况基本是普遍的,容易解决。当我们要用正则表达式对某一输入栏加以校验。

书上给的示例是这样的:


然而并没有效果。parm name 如果是“expression” 正则表达式不会有效果。

应将参数名改为regex.

哎,弄了整整一天。真是各种百度。

  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值