Spring - applicationContext.xml 无法打开,因为它不存在

标签 spring spring-mvc junit

我有一个 Spring MVC 应用程序,并且与文件 applicationContext.xml 结合使用 JUnit 测试时遇到问题。

在我的 JUnit 测试类中我写道:

final ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
service = (TestServiceImpl) context.getBean("testServiceImpl");

我得到的错误是找不到 aplicationContect.xml:

org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource [applicationContext.xml] cannot be opened because it does not exist

但它存在于WEB-INF文件夹中。

那么,这里出了什么问题?为什么 JUnit 测试的文件不存在?

最佳答案

您应该将 Spring 文件保存在另一个文件夹中,标记为“source”(就像“src”或“resources”)。

WEB-INF 不是源文件夹,因此它不会包含在类路径中(即 JUnit 不会在那里查找任何内容)。

关于Spring - applicationContext.xml 无法打开,因为它不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3907833/

相关文章:

java - Junit测试用例——先执行一个特定的测试用例

java - 如何从我的服务层中的 applicationContext.xml 访问 bean。

java - 使用数组或列表在 JSP 中自动完成文本框

java - 要求属性在模型中具有值,不允许为 null

javascript - IE 11 - DataTables DOM 性能问题

java - 当返回类型为项目的PaginatedList时,如何模拟mapper.query方法

java - 钩子(Hook) @Before 和 @after 在开始时被调用两次

java - 仅更新 hibernate 中对象的非空字段

java - 无法将依赖项添加到转换为 maven 的 Spring 项目

java - CronSequenceGenerator 的解决方法是每月的最后一天?