使用 xFire 时出现 FileNotFoundException

发布于 2024-12-29 04:26:37 字数 1311 浏览 2 评论 0原文

我正在尝试使用 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

傲世九天 2025-01-05 04:26:37

文档说该文件应该放置在 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 ?

痴情换悲伤 2025-01-05 04:26:37

试试这个...

<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>

强制您需要的文件的位置。在本例中,我使用 ".. \" 上升一级。这是在 web.xml 中完成的

try this...

<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>

Force the location of the file you need. In this case, I used ".. \" to go up one level. This is done in web.xml

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文