求高手解答:DelegatingFilterProxy 配置 tomcat启动报错 NoSuchBeanDefinitionException

宾灬 2019-10-31 11:10:14
//初始化类
public class MyWebApplicationInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {

//要注册的过滤器
@Override
protected Filter[] getServletFilters() {
DelegatingFilterProxy delegatingFilterProxy = new DelegatingFilterProxy();
delegatingFilterProxy.setTargetBeanName("delegatingFilter");
return new Filter[] {delegatingFilterProxy};
}

}
//DelegatingFilterProxy 的目标过滤器
@Component("delegatingFilter")
public class DelegatingFilter extends GenericFilterBean {

public DelegatingFilter(){
LogUtils.info("Create DelegatingFilter");
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
throws IOException, ServletException {
LogUtils.info("--------------------------doFilter-----------------------");
filterChain.doFilter(servletRequest, servletResponse);
}
}


启动tomcat报错信息:
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'delegatingFilter' available

我用的是java配置,没用xml。我猜是DelegatingFilterProxy 初始化时,spring容器中还没有注入bean,所以找不到。求高手解答。
...全文
302 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
宾灬 2019-10-31
  • 打赏
  • 举报
回复
解决了,之前是把目标过滤器放到springmvc容器中, 放到spring容器中就可以了。 ( spring容器不能访问springmvc容器,反之则可以)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧