【问题标题】:How to publish & consume a SOAP web service in an application server container?如何在应用服务器容器中发布和使用 SOAP Web 服务?
【发布时间】:2023-04-08 01:19:01
【问题描述】:

我正在使用自下而上的方法来开发 SOAP Web 服务。我正在使用 Apache cxf maven 插件从@WebService SEI java 类生成 WSDL。我正在使用 cxf maven 插件从 WSDL 生成存根。

完成此操作后,现在我需要知道如何发布在我的 WSDL 中称为 '<soap:address location..' 的 Web 服务端点。在我使用 JBoss 的情况下,我看到 http://localhost:9090/SEINamePort 作为 WSDL 中的端点地址。看来我需要发布这个了。

请指导我在部署在 EE 应用程序服务器容器中的应用程序中发布和使用此端点的最佳方式是什么。

【问题讨论】:

    标签: jakarta-ee jax-ws


    【解决方案1】:

    你应该让事情尽可能简单,如果你使用 JBoss,你可以创建一个 EJB 并添加 WebService 注释,比如:

    @Stateless
    @WebService
    public class MyClass{
    
       public int multiply(int a, int b){
          return a * b;
       }
    }
    

    并且 Web 服务将自动发布。如果要创建web服务客户端,只需要使用jdk中的wsimport工具即可:

    wsimport -keep -verbose http://ip:port/yourwebservice/ws?wsdl
    

    -keep 保存生成的类 -verbose 在控制台中打印输出(可选)

    这是一个对您有用的链接: http://www.mkyong.com/webservices/jax-ws/jax-ws-wsimport-tool-example/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-28
      • 2012-09-23
      • 1970-01-01
      • 1970-01-01
      • 2011-12-13
      相关资源
      最近更新 更多