按照说明here,但我收到错误无法自动装载WebApplicationContext。
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("applicationContext-test.xml")
@WebAppConfiguration
public class AjaxTest {
@Autowired
private WebApplicationContext webApplicationContext; //FAILS
但这会编译:
@Autowired
ServletContext servletContext;
private WebApplicationContext webApplicationContext = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);
我不明白为什么。
修改 它使用maven运行正常,我的编辑器intellij显示了一个不正确的自动编译消息,bug in fact。
答案 0 :(得分:1)
您的测试类应该实现ApplicationContextAware
接口:
public class ApplicationContextProvider implements ApplicationContextAware {
private static ApplicationContext applicationContext = null;
public static ApplicationContext getApplicationContext() {
return applicationContext;
}
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
this.applicationContext = applicationContext;
}
}
Spring会自动注入应用程序上下文。