【发布时间】:2014-01-05 21:53:09
【问题描述】:
我的初始化程序中有以下代码:
public class AppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected Filter[] getServletFilters() {
DelegatingFilterProxy shiroFilter = new DelegatingFilterProxy("shiroFilter");
shiroFilter.setTargetFilterLifecycle(true);
return new Filter[]{new CorsFilter(),shiroFilter};
}
}
我希望在ShiroFilter 之前执行CorsFilter。但是,Spring 文档并没有说过滤器的执行顺序是由它们在返回数组中的顺序决定的。
如果是这样,有人可以澄清一下吗?如果没有,有人可以建议我如何做我保证过滤器的执行顺序?
【问题讨论】:
-
你的堆栈中哪里有
OncePerRequestFilter? -
“在哪里”是什么意思?它是春天的一部分
-
之前你在谈论 Shiro 的
OncePerRequestFilter。是哪一个? -
完整阅读下面的 cmets。这个 cmets 也属于那个帖子本身,而不是这里。
-
web.xml文件中的过滤器顺序已确定,如果您可以选择的话。
标签: java spring spring-java-config