我有一个带有以下配置类的Web应用程序:
@Configuration
@EnableWebMvc
@EnableSpringDataWebSupport
class CustomMvcConfiguration extends WebMvcConfigurerAdapter {
@Bean
public MyBean myBean() {
return new MyBean();
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new LocaleChangeInterceptor());
}
}
我想在应用程序中添加jar的依赖项,将另一个bean和另一个拦截器添加到上下文中。在另一个项目中,我有另一个WebMvcConfigurerAdapter类,但它没有运行:
@Configuration
@EnableWebMvc
@EnableSpringDataWebSupport
class OtherCustomMvcConfiguration extends WebMvcConfigurerAdapter {
@Bean
public OtherBean otherBean() {
return new OtherBean();
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new CustomInterceptor());
}
}
如果我尝试将OtherBean注入到应用程序的类中,则上下文中不存在:
@Inject
private OtherBean otherBean;
并且CustomInterceptor不会运行。如何从外部模块向应用程序添加bean和拦截器?
答案 0 :(得分:0)
我认为您只需要在MVC配置中添加适当的@Include
注释。
@Include(OtherCustomMvcConfiguration.class)
class CustomMvcConfiguration extends WebMvcConfigurerAdapter {
...
}