设为首页 加入收藏

TOP

Struts2 更改校验配置文件位置
2017-06-26 10:23:01 】 浏览:9245
Tags:Struts2 更改 校验 配置 文件 位置

@(Java)[Struts|Interceptor]


在Struts2中提供的拦截器校验ValidationInterceptor,该校验器中默认的配置文件位于Action包的位置下,需要和Action类放在一起,而提供的注解又不能针对每个方法不同的参数校验,只能使用配置文件方式来实现同一个Action不同方法实现不同的校验。这里配置文件的放置位置和违反了项目的结构,根据项目结构,需要把配置文件统一放置在资源包下。
原校验配置文件放置结构如下:


重定义配置文件路径后,项目结构如下:
:struts-validation/后面跟着Action类名,然后该目录下放置对该Action校验的配置文件


注:还是SpringMVC中有入参,可以集成JSR-303,通过注解来实现比较方便


通过查询了相关资料和看了部分源码,发现读取配置文件的路径已经写死了,但是Struts2提供自定义实现该类的接口以及配置,所以可以通过自定义方式实现。
DefaultActionValidatorManager,其中读取配置文件的路径部分代码如下:


由于上面两个方法是private的,所以只能将DefaultActionValidatorManager的所有代码复制过来,写一个CustomValidatorManager类,然后重写上面的两个方法。如下:


然后在struts配置文件中配置自定义实现即可:


推荐阅读:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Spring Cache 心得笔记 下一篇Java中的事件监听机制

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目