springboot中@webfilter註解的filter時注入bean都是null
阿新 • • 發佈:2019-01-12
在使用@Webfilter註解Filter的情況下,不上外部tomcat時是沒有問題的。但是在tomcat下執行時,filter中注入的bean就都是null
解決辦法:
一:去掉@Webfilter註解
public class GeneralFilter implements Filter { @Autowired private SettingRemote settingRemote; //注入 .... }
二: 新增一個配置類,用來手工建立filter的bean
@Configurationpublic class WebMvcConfig implements WebMvcConfigurer { @Bean public Filter generalFilter() { return new GeneralFilter(); } @Bean public FilterRegistrationBean uploadFilterRegistration() { FilterRegistrationBean registration = new FilterRegistrationBean(); registration.setFilter(new DelegatingFilterProxy("generalFilter")); registration.addUrlPatterns("/*"); registration.setName("generalFilter"); registration.setOrder(1); return registration; } }
之後注入的業務bean就不會是null