使用 xFire 时出现 FileNotFoundException
我正在尝试使用 xfire 将现有的 Java 函数公开为 Web 服务。
我已将其添加到我的 web.xml 中:
<servlet>
<display-name>XFireServlet</display-name>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/servlet/XFireServlet/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
这是我的 services.xml:
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>machine</name>
<namespace>http://xfire.codehaus.org/machine</namespace>
<serviceClass>com.amazon.lm.util.LMUtils</serviceClass>
</service>
</beans>
我已将 services.xml
文件放在 META-INF/xfire
目录下,当我尝试访问本地主机以获取 wsdl 文件,但收到 FileNotFoundException
提示 META-INF/xfire/services.xml 文件
不存在。
有人可以帮我解决这个问题吗?
I am trying to expose an existing Java function as a web service using xfire.
I have added this in my web.xml:
<servlet>
<display-name>XFireServlet</display-name>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/servlet/XFireServlet/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
and this is my services.xml:
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>machine</name>
<namespace>http://xfire.codehaus.org/machine</namespace>
<serviceClass>com.amazon.lm.util.LMUtils</serviceClass>
</service>
</beans>
I have placed the services.xml
file under the META-INF/xfire
directory and when I try to hit my localhost for the wsdl file, I get FileNotFoundException
saying that META-INF/xfire/services.xml file
does not exist.
Can anybody please help me with this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
文档说该文件应该放置在 META-INF/xfire 的“类路径中”。这意味着你想把它放在 /yourcontext/WEB-INF/classes/META-INF/xfire 中,而我猜你可能把它放在 /yourcontext/META-INF/xfire 中?
The documentation says the file should be placed "in the classpath" at META-INF/xfire. This means that you want to put it in /yourcontext/WEB-INF/classes/META-INF/xfire whereas I'm guessing maybe you put it in /yourcontext/META-INF/xfire ?
试试这个...
强制您需要的文件的位置。在本例中,我使用 ".. \" 上升一级。这是在 web.xml 中完成的
try this...
Force the location of the file you need. In this case, I used ".. \" to go up one level. This is done in web.xml