报错说配置文件找不到,我看了,很怪。。。

xingshen100 2014-11-20 02:54:55
使用Maven构建Web项目,模块Maven项目中都有对应的xml配置文件。web项目中web.xml中context-param标签配置了各个模块配置文件的因引用。见图:

配置文件web.xml如下:
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
<display-name>Sample Maven Project: Account Service</display-name>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:/account-persist-my.xml
classpath:/account-email-my.xml
classpath:/account-captcha-my.xml
classpath:/account-service-my.xml
</param-value>
</context-param>

<servlet>
<servlet-name>CaptchaImageServlet</servlet-name>
<servlet-class>com.csii.account.account_web_my.CaptchaImageServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>SignUpServlet</servlet-name>
<servlet-class>com.csii.account.account_web_my.SignUpServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ActivateServlet</servlet-name>
<servlet-class>com.csii.account.account_web_my.ActivateServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.csii.account.account_web_my.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CaptchaImageServlet</servlet-name>
<url-pattern>/captcha_image</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SignUpServlet</servlet-name>
<url-pattern>/signup</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ActivateServlet</servlet-name>
<url-pattern>/activate</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>



见context-param标签中就是引用配置文件的,项目测试中用jetty-maven-plugin插件做的,后台报错:
严重: Context initialization failed
org.springframework.beans.factory.BeanDefinitionStoreException: IOException pars
ing XML document from class path resource [account-email-my.xml]; nested excepti
on is java.io.FileNotFoundException: class path resource [account-email-my.xml]
cannot be opened because it does not exist
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBea
nDefinitions(XmlBeanDefinitionReader.java:349)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBea
nDefinitions(XmlBeanDefinitionReader.java:310)

奇怪的是只有account-persist-my.xml这个能找到,我仔细看了,都配了呀。请大神指点?
...全文
242 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xingshen100 2014-11-21
  • 打赏
  • 举报
回复
问题已经解决了。是这样的,使用jetty插件,运行程序之前,我没有对项目全部测试构建一次,之前测试时使用的配置文件名被我后来修改过,但测试代码相应位置我忘了修改。使用jetty项目运行项目时,我想它也自动先运行测试代码了,所以报错了。不是主代码报错。 在此,谢谢各位的回答。
meng020712 2014-11-21
  • 打赏
  • 举报
回复
你那文件中有web-inf/class/目录吗? 有的话、建议把classpath去掉、用\WEB\INFO\CLASS 代替
猎魔人-不纯 2014-11-21
  • 打赏
  • 举报
回复
都不在源路径下吧
LOVE-漂泊 2014-11-21
  • 打赏
  • 举报
回复
表示不懂 但是感觉应该吧路径写详细点试一试
loveunittesting 2014-11-20
  • 打赏
  • 举报
回复
把那些classpath:去掉呢?再有,看看package一下,web-inf/class下是否有文件
  • 打赏
  • 举报
回复
又是Maven项目的问题,我觉得还是用普通的Web项目然后加入Maven特性方便一些。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧