java - 在java6中使用WSDL生成ws客户端

标签 java web-services soap wsdl

我是第一次使用 wsdl。如果这是一个非常新手的问题,我深表歉意。

我有一个用于 Web 服务的 wsdl 文件。我想创建一个 java 控制台应用程序来使用该服务。 我使用 wsimport 工具和 wsdl 生成了类文件。已经生成了大量的类文件。 我现在很困惑,我是否需要网络服务提供商提供进一步的文档来实现该服务,或者是否需要进行任何有关使用生成的文件的转换。 任何建议都会非常有帮助。

最佳答案

WSDL 文件已经具有您需要的完整定义,包括数据类型、每个方法的请求和响应包装器等。这意味着,由于您已经通过 wsimport 生成了客户端实现,您唯一要做的就是将此文件导入到您当前的 java 项目中并使用它来访问 Web 服务。

您可以找到大量有关如何使用此生成的客户端代码的示例。这是one of them 。简而言之,您有两个主要生成的类,代表 Web 服务:一个用 @WebService 注释的接口(interface)和一些用 @WebServiceClient 注释的服务。您只需要从服务获取 intarface 的实例,例如:

HelloWorldImplService helloService = new HelloWorldImplService();
HelloWorld hello = helloService.getHelloWorldImplPort();

这里的 HelloWorld 是一个接口(interface),它提供了 WSDL 中 Web 服务的所有方法。然后你就会得到它,你可以用它来调用网络服务。只是不要忘记,如果不是您需要的,您可能必须覆盖 Web 服务客户端的默认 IP 地址。

您可能需要的唯一附加文档是一些提供有关 Web 服务业务目的信息的文档,这对于与此 Web 服务交互的开发人员可能有用。

关于java - 在java6中使用WSDL生成ws客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33665830/

相关文章:

java - JCO_ERROR_RESOURCE : Destination does not exist

java - onSave()(对于使用 Hibernate/Spring Data Repositories 保存的任何实体)

web-services - Axis2 多连接认证问题

C# Web api post 参数始终为空

java - FedEx SOAP WS 与 Spring Restful WS 项目的集成

java - Android 中的 fragment 事务错误不适用

java - 使用 MySQL 填充 jTable

java - 无法使用从浏览器发布的 Base 64 编码字符串创建图像

java - SOAP UI 中未弹出“请求”选项卡

web-services - URL 末尾不带 WSDL 的 SOAP Web 服务