Java 解析XML ServletContext资源BeanDefinitionStoreException
我知道那个愚蠢的问题问了很多次,但我不明白怎么了。帮我修一下。我尝试使用SpringMVC运行我的应用程序,但我得到: 2017年8月11日13:06:29.471严重[RMI TCP连接(2)-127.0.0.1]Java 解析XML ServletContext资源BeanDefinitionStoreException,java,xml,spring,Java,Xml,Spring,我知道那个愚蠢的问题问了很多次,但我不明白怎么了。帮我修一下。我尝试使用SpringMVC运行我的应用程序,但我得到: 2017年8月11日13:06:29.471严重[RMI TCP连接(2)-127.0.0.1] org.springframework.beans.factory.BeanDefinitionStoreException: 从ServletContext资源解析XML文档时发生IOException [/WEB-INF/applicationContext.xml];嵌套异常
org.springframework.beans.factory.BeanDefinitionStoreException: 从ServletContext资源解析XML文档时发生IOException [/WEB-INF/applicationContext.xml];嵌套异常是 java.io.FileNotFoundException:无法打开ServletContext资源 我在
web.xml
classpath:spring context.xml
中设置了文件路径:
<!-- Creates the Spring Container shared by all Servlets and Filters -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- Process application servlet -->
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:spring-context.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
org.springframework.web.context.ContextLoaderListener
appServlet
org.springframework.web.servlet.DispatcherServlet
上下文配置位置
类路径:spring-context.xml
1.
appServlet
*.做
项目结构:
在web xml的开头,您声明了
ContextLoaderListener
。
正如您在本文档中所看到的
当您使用默认构造函数(不带参数)时,它的作用如下
创建将创建web应用程序的新ContextLoaderListener
基于“contextClass”和“contextConfigLocation”的上下文
servlet上下文参数
默认的contextConfigLocation
确切地说是/WEB-INF/applicationContext.xml
。在您的项目中,该文件不存在,但类ContextLoaderListener
需要该文件,它会查找该文件,如果找不到该文件,则抛出您提到的异常。
您可以通过将配置设为param来解决问题。设为param是什么意思?使用标记param name和param value将参数传递给ContextConfig位置的构造函数