Java 解析XML ServletContext资源BeanDefinitionStoreException

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];嵌套异常

我知道那个愚蠢的问题问了很多次,但我不明白怎么了。帮我修一下。我尝试使用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];嵌套异常是 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位置的构造函数