2017-04-05 125 views
0

我是Spring MVC的新手。我收到以下错误,当我试图运行Tomcat的8.5我的动态Web项目这是我在春天SEVERE:上下文初始化失败org.springframework.beans.factory.BeanDefinitionStoreException:

第一个项目

错误

严重:异常发送上下文初始化事件监听器 实例IOException解析来自ServletContext资源的XML文档 [/WEB-INF/applicationContext.xml];解析XML文档时出现IOException异常[/WEB-INF/applicationContext.xml];嵌套的异常是 java.io.FileNotFoundException:无法打开ServletContext的资源 [/WEB-INF/applicationContext.xml的] 在org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:344) 在org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304) 在org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181) 在org.springframework.beans。 factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188) 在org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125) 在org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94) 在org.springframework。 context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129) 在org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:613) 在org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext。 java:514) at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:443) at org.springfr amework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:325) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107) at org.apache.catalina.core.StandardContext.listenerStart( (org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org。)。 apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1419) at org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1409) at java.util.concurrent.FutureTask。运行(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadP (java.lang.Threading.run)(Thread.java:745) 引起来自:java.io. FileNotFoundException:无法打开ServletContext资源[/WEB-INF/applicationContext.xml] at org.springframework.web.context.support.ServletContextResource.getInputStream(ServletContextResource.java:141) at org.springframework.beans.factory.xml .XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:330) ...21多

我的web.xml文件:

<?xml version="1.0" encoding="UTF-8"?> 
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> 
     <display-name>SpringMVCTest</display-name> 
     <welcome-file-list> 

     <welcome-file>index.jsp</welcome-file> 

     </welcome-file-list> 

     <servlet> 
     <servlet-name>dispatcher</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
     </servlet> 

     <servlet-mapping> 
     <servlet-name>dispatcher</servlet-name> 
     <url-pattern>/</url-pattern> 
     </servlet-mapping> 

    </web-app> 

我的调度员servlet.xml文件:

<?xml version="1.0" encoding="UTF-8"?> 

    <beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns:context="http://www.springframework.org/schema/context" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
     http://www.springframework.org/schema/context 
     http://www.springframework.org/schema/context/spring-context-3.0.xsd"> 

     <bean id="handlerMapping" class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"> 

     </bean> 

     <bean name="/" class="com.learn.spring.controller.BaseController"></bean> 

     <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
      <property name="prefix"> 
       <value>/</value> 
      </property> 
      <property name="suffix"> 
       <value>.jsp</value> 
      </property> 
     </bean> 

    </beans> 

我只是想在一个页面上打印信息,我需要applicationContext.xml文件吗?如果是的话,我该如何将它添加到我的项目中?我读了春季搜索[servlet-name] -servlet.xml文件。

回答

0

你必须初始化你调度-servlet.xml中文件中的的web.xml文件。 更改您的web.xml文件,在它们之间添加这些行。

<init-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>/WEB-INF/dispatcher-servlet.xml</param-value> 
</init-param> 

这是你最后的web.xml文件

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> 
    <display-name>SpringMVCTest</display-name> 
    <welcome-file-list> 

    <welcome-file>index.jsp</welcome-file> 

    </welcome-file-list> 

    <servlet> 
    <servlet-name>dispatcher</servlet-name> 
    <servlet-class> 
        org.springframework.web.servlet.DispatcherServlet 
      </servlet-class> 
    <load-on-startup>1</load-on-startup> 
    <init-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>/WEB-INF/dispatcher-servlet.xml</param-value> 
    </init-param> 
</servlet> 

    <servlet-mapping> 
    <servlet-name>dispatcher</servlet-name> 
    <url-pattern>/</url-pattern> 
    </servlet-mapping> 

</web-app> 

你应该在WEB-INF文件夹

+0

嗨创建调度-servlet.xml文件,我做出改变但得到了以下错误cvc-complex-type.2.4.a:发现无效内容从元素'init-param'开始。其中一个'{“http:// xmlns.jcp.org/xml/ns/javaee":enabled,”http://xmlns.jcp.org/xml/ns/javaee":async-supported, “http ://xmlns.jcp.org/xml/ns/javaee“:run-as,”http://xmlns.jcp.org/xml/ns/javaee":security-role-ref, “http://预计xmlns.jcp.org/xml/ns/javaee":multipart-config}'。 –

+0

我改了一条线。现在这没关系。试试这个新的web.xml文件 – Dev4World

相关问题