我已经设置了一个我正在尝试在Eclipse中调试的Web服务。
它有一个像这样的目录结构:
Root /
+ src
+ META-INF
+ WEB-INF
在META-INF
目录中,有一个文件夹\xfire\services.xml
。
当我启动服务器时,出现以下错误:
java.io.FileNotFoundException: class path resource [META-INF/xfire/services.xml] cannot be opened because it does not exist
当我从 sysinternals 运行procmon.exe
时,我发现我在以下路径上发现了“未找到路径”错误:
C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\META-INF\xfire\services.xml
C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\MyWebService\WEB-INF\META-INF\xfire\services.xml
C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\MyWebService\WEB-INF\classes\META-INF\xfire\services.xml
文件存储在:
C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\MyWebService\META-INF\xfire\services.xml
我做错了什么?
答案 0 :(得分:2)
我有一个问题,META-INF文件夹必须保留在WEB-INF中...这样,你可以保留正常的文件夹。 试试这个...
<servlet>
<servlet-name>XFire</servlet-name>
<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>../META-INF/xfire/services.xml</param-value>
</init-param>
</servlet>
强制所需文件的位置。在这种情况下,我使用&#34; .. \&#34; 上升一级。这可以在 web.xml
中完成答案 1 :(得分:0)
看起来像getRessources()用于读取你的xml,所以文件需要在类路径中。
只需在您的项目源目录中移动或复制META-INF(我猜src或src / main ...)。