在线工具 在线编程 在线白板 在线工具 在线编程 在线白板

[求助]SSH,在tomcat启动时找不到applicationContext.xml

初用S2.0SH(struts2.0+spring+hibernate)开发时:
在SSH环境搭建好,启动tomcat提示applicationContext.xml没找到
我的applicationContext.xml是放在src下面的
web.xml:

<filter>
<!-- 定义核心Filter的名称 -->
<filter-name>struts2</filter-name>
<!-- 定义核心Filer的实现类 -->
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/classes/applicationContext.xml
</param-value>
</context-param>
<filter-mapping>
<!-- 核心Filter的名称 -->
<filter-name>struts2</filter-name>
<!-- 使用该核心Filter来接收所有的web请求 -->
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

报错信息:
严重: 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]
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:349)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
.........
具体的类结构如图:
按照一楼的改过了,还是不行啊 ?
搭建SSH环境的时候,applicationContext.xml是自动生成在src下的
怎么就找不到哦
相关的包也是添加了的
asm-2.2.3.jar删除了的,commons-dbcp.jar和commons-pool.jar。添加了的
最新回答
初心不负

2024-11-04 09:47:26

/WEB-INF/classes/applicationContext.xml是否有内容,从图片中看到视乎没有看到applicationContext.xml文件。src中的applicationContext.xml不会自动映射下去。 

ps:真正的项目是\WebRoot中的所有资源,src只是软件用于项目管理,你会发现\WebRoot\WEB-INF\classes里面是src中的所有编好的类。实际上使用的就是这些class文件。同理,applicationContext.xml文件也是一样。从你图片中可以看到没有这个文件。看附上的图片。

帕嘉音

2024-11-04 20:37:29

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
这么写就行了
雪蝶宿秋风

2024-11-04 00:56:21

你这么写真有点 多余

这么写就OK 了
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>applicationContext.xml</param-value>
</context-param>