转载请注意出处:http://blog.csdn.net/bettarwang/article/details/39801733

     我们知道,假设要为某个Action指定校验文件。那么就要将"Action名-validation.xml"的校验文件放在与该Action在同一路径下,而且在struts.xml中指定<result name="input>的值,在input对应的文件里增加<s:fielderror/>就可以。

此时假设输入不符合校验规则,就不会跳转到对应的action。而是仍然跳转回input文件。并显示对应的校验提示。

     可是自己在指定了校验文件之后,却发现始终不起作用,后来最终发现问题,原来是自己贪图方便,直接从别处复制过来校验配置文件的dtd信息。可是这个复制过来的dtd信息跟自己如今这个版本号的Struts所用的dtd信息并不同样,从而导致校验不起作用。

     解决方法非常easy,就是在lib中找到自己所用的xwork-core文件。比方我的是xwork-core-2.3.16.3.jar。用解压工具查看当中的dtd文件。一般有多个。我查看的是xwork-validator-1.0.3.dtd,里面内容例如以下:



仅仅要将以下的片段拷贝到校验文件里就可以:


后面尝试了一下。发现用xwork-validator-1.0.2.dtd中的配置信息也能够,这应该仅仅是版本号的问题,可是一定要是自己的xwork-core支持的版本号才行。


相关文章:

  • 2022-12-23
  • 2021-07-26
  • 2021-08-05
  • 2021-10-11
  • 2021-08-09
  • 2022-12-23
  • 2021-12-17
  • 2021-07-18
猜你喜欢
  • 2021-12-25
  • 2022-01-15
  • 2021-06-26
  • 2021-12-06
  • 2022-12-23
相关资源
相似解决方案