У меня есть приложение Spring Boot, у меня есть XML-контекст приложения, определенный в XML, в котором определена группа компонентов. Важный компонент здесь:
<bean id="MyAccessBean" class="com.company.MyAccessBean">
<property name="ds" ref="ds"/>
<property name="dsR" ref="dsr"/>
</bean>
Мой скелет класса приложения выглядит следующим образом:
@EnableAutoConfiguration
@ServletComponentScan
@SpringBootApplication
@ImportResource("classpath:applicationContext.xml")
public class MyApplication extends SpringBootServletInitializer {
@Autowired
MyAccessBean acBean
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(MyApplication.class);
}
public static void main(String[] args) throws Exception {
SpringApplication.run(MyApplication.class, args);
}
@Bean
public FilterRegistrationBean<ReqLoggingFilter> reqLoggingFilter() {
FilterRegistrationBean<ReqLoggingFilter> regBean = new FilterRegistrationBean();
ReqLoggingFilter requestLoggingFilter = new ReqLoggingFilter();
logger.info("acBean: " + acBean);
requestLoggingFilter.setAccessBean(acBean);
regBean.setFilter(requestLoggingFilter);
regBean.addUrlPatterns("/foo/*");
return regBean;
}
}
Проблема заключается в том, что во время вызова метода FilterRegistrationBean MyAccessBean
еще не был подключен автоматически, поэтому null
. Я использую Spring Boot 2.1.1.RELEASE. Любые предложения о том, как это исправить?
Спасибо