启动报错信息:严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml]
Caused by: java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml]
at org.springframework.web.context.support.ServletContextResource.getInputStream(ServletContextResource.java:99)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:297)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:280)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:131)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:147)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:92)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:101)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:389)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:324)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)web.xml配置: <!-- 配置Spring监听 -->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLoaction</param-name>
<param-value>
/WEB-INF/spring/applicationContext.xml,
/WEB-INF/spring/di/springDao.xml,
/WEB-INF/spring/di/springBiz.xml,
/WEB-INF/spring/di/springAction.xml
</param-value>
</context-param>
tomcat中清空work文件夹里的项目,重新启动后,依然报这个错.
无法找到spring路径,但配置上应该没有错,这是为什么?急!

解决方案 »

  1.   

    从错误来看,是spring配置文件applicationContext.xml不能正确解析,是不是这里面的某个bean配置有错误,还是你这里“/WEB-INF/spring/applicationContext.xml”路径给的不对?
      

  2.   

    找不到文件,路径错了,
    解析的时候是/WEB-INF/applicationContext.xml,
    但是你的配置却是 /WEB-INF/spring/applicationContext.xml,
    看看tomcat中该项目的web.xml有没有更新。
      

  3.   

    applicationContext.xml 位置不对 和 web.xml  /WEB-INF/spring/applicationContext.xml, 不匹配
      

  4.   

    很显然位置不对,报错是说Could not open ServletContext resource [/WEB-INF/applicationContext.xml]
    而你配的是/WEB-INF/spring/applicationContext.xml
      

  5.   

    建议你这样写:<context-param>
            <param-name>contextConfigLoaction</param-name>
            <param-value>
                classpath:spring/*.xml,classpath:spring/di/*.xml
            </param-value>
        </context-param>
      

  6.   

    java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/applicationContext.xml]找不到applicationContext.xml配置文件.
      

  7.   


    建议楼主看看这个:http://hi.baidu.com/zhengenyang/blog/item/e62460228696e8a54723e875.html
      

  8.   

    web.xml中配置:
    <!-- 通过监听器加载spring配置文件 -->
    <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <!-- 如果是多个,以“,”分隔 -->
    <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>WEB-INF/applicationContext.xml</param-value>
    </context-param>也可能是 包冲突 的问题:
    把 cglib包 和 asm包删了试试
      

  9.   

    把spring中的一个叫-2.2.3.jar的包要remove掉
    步骤:
    选中项目名称,选择MyEclipse->Preferences
    然后在树状表里选择MyEclispse->Project Capabilities->Spring
    再选择Spring的版本,然后找到asm-2.2.3.jar,把它remove了
      

  10.   


    为什么一定要这么写?你的这个是找classpath下的,而楼主的是在WEB-INF下的
      

  11.   

    感觉 包有冲突,或者 jar包没有找到
      

  12.   

    发现是哪里错了.是我大意了!contextConfigLoaction应该是:contextConfigLocation就是字母写反了!