求高手解答: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,所以找不到。求高手解答。