由于某些需求,我需要将javax.servlet.Filter作为bean交付(我创建它并从方法返回)-稍后将其自动绑定到组件。我的问题是,我不想让它注册为过滤器,而Springboot似乎是自动做的。我找到了一个实现WebApplicationInitializer的解决方案,但它似乎被忽略了。换句话说,我想指定我自己想要使用的过滤器。
我正在使用spring-boot-starter-web
提前感谢!
发布于 2018-01-27 00:21:23
根据我们上面的评论,你可以通过这里描述的方法来解决这个问题:https://github.com/spring-projects/spring-boot/issues/2173。
定义一个过滤器注册bean并禁用其中的过滤器。
@Bean
public FilterRegistrationBean registration() {
DelegatingFilterProxy filter = filter(); // or inject it with a @Qualifier
FilterRegistrationBean registration = new FilterRegistrationBean(filter);
registration.setEnabled(false);
return registration;
}https://stackoverflow.com/questions/48463737
复制相似问题