【问题标题】:Quickest way to access a webservice with WSDL in Java在 Java 中使用 WSDL 访问 Web 服务的最快方法
【发布时间】:2011-06-08 14:59:57
【问题描述】:

我需要从 Java 访问网络服务。 The service has a WSDL。现在我该如何调用它的操作?

  • 我已经在上面使用了wsimport,但它只会为操作/响应生成 XML 对象,实际上并没有调用它们。
  • 我查看了Spring-WS,但它看起来并不完全是我想要的(即使它可能是解决方案的一部分)。该页面中根本没有出现“wsdl”一词。

【问题讨论】:

    标签: java soap wsdl spring-ws


    【解决方案1】:

    wsimport 不仅生成与服务通信所需的对象,还生成服务客户端。创建类MSaleService 的实例并使用getMSaleServiceSoap() 获取端口。就是这样。

    可能有一些问题。 wsimport投诉

    [警告] SOAP 端口“MSaleServiceSoap12”:使用非标准 SOAP 1.2 绑定。
    http://vas.mikro-odeme.com/services/msaleservice.asmx?wsdl 的第 530 行

    但我不知道这是否会造成真正的问题。

    【讨论】:

    • 哦,我忽略了那些对象。所以这就是我所需要的吗?那很容易。该警告不应引起麻烦,因为它只是一个备用端口。
    【解决方案2】:

    这是我找到的快速链接

    http://download.oracle.com/javaee/1.4/tutorial/doc/JAXRPC5.html

    基本上,这种类型的调用是调用动态调用,您不需要需要先验地知道 WSDL。

    【讨论】:

      【解决方案3】:

      如果您使用 Eclipse,则有这个向导,您只需指向您的 wsdl 文件即可创建所谓的新“Web 服务客户端”。

      因此,如果您的项目中有 wsdl,则只需单击“新建”并选择向导。

      它会要求您提供 wsdl 文件和其他一些信息(您可以选择运行时 -Axis、Axis2、CXF...)。

      我认为这个向导是 WTP (www.eclipse.org/webtools) 的一部分。

      看看:

      http://tinyurl.com/5v56s5u

      http://www.eclipse.org/webtools/jst/components/ws/1.5/tutorials/WebServiceClient/WebServiceClient.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多