在 java6 中使用 WSDL 生成 ws 客户端
Generating ws client using WSDL in java6
我是第一次使用 wsdl。如果这是一个非常新手的问题,我深表歉意。
我有一个网络服务的 wsdl 文件。我想创建一个 java 控制台应用程序来使用该服务。
我已经使用 wsimport 工具和 wsdl 生成了 class 个文件。生成了大量 class 文件。
我现在很困惑,我是否需要来自网络服务提供商的进一步文档来实施该服务,或者是否存在关于使用生成的文件的任何转换。
任何建议都会非常有帮助。
WSDL 文件已经有了您需要的完整定义,包括数据类型、每个方法的请求和响应包装器等。这意味着,既然您已经通过 wsimport 生成了客户端实现,那么您唯一需要做的就是是将此文件导入您当前的 java 项目并使用它来访问网络服务。
您可以找到大量示例,了解如何使用此生成的客户端代码。这里是one of them。简而言之,您有两个主要生成的 类,代表 Web 服务:一个带有 @WebService
注释的接口和一些带有 @WebServiceClient
注释的服务。您只需要从服务中获取 intarface 的实例,例如:
HelloWorldImplService helloService = new HelloWorldImplService();
HelloWorld hello = helloService.getHelloWorldImplPort();
这里我们HelloWorld
是一个接口,它提供了来自WSDL的web-service的所有方法。然后你就会得到它,你可以用它来调用网络服务。只是不要忘记,您可能必须覆盖 Web 服务客户端的默认 IP 地址,如果它不是您需要的。
您可能需要的唯一附加文档是一些提供有关 Web 服务业务目的信息的文档,这些文档可能对与此 Web 服务交互的开发人员有用。
您可以简单地从用 @WebServiceClient
注释的 class 创建一个服务客户端对象,并使用参数调用相关方法。
WebServiceClient client = new WebServiceClient();
AnswerType answer = client.GetSoap().theMethodYouWantUse(some_parameters);
我是第一次使用 wsdl。如果这是一个非常新手的问题,我深表歉意。
我有一个网络服务的 wsdl 文件。我想创建一个 java 控制台应用程序来使用该服务。 我已经使用 wsimport 工具和 wsdl 生成了 class 个文件。生成了大量 class 文件。 我现在很困惑,我是否需要来自网络服务提供商的进一步文档来实施该服务,或者是否存在关于使用生成的文件的任何转换。 任何建议都会非常有帮助。
WSDL 文件已经有了您需要的完整定义,包括数据类型、每个方法的请求和响应包装器等。这意味着,既然您已经通过 wsimport 生成了客户端实现,那么您唯一需要做的就是是将此文件导入您当前的 java 项目并使用它来访问网络服务。
您可以找到大量示例,了解如何使用此生成的客户端代码。这里是one of them。简而言之,您有两个主要生成的 类,代表 Web 服务:一个带有 @WebService
注释的接口和一些带有 @WebServiceClient
注释的服务。您只需要从服务中获取 intarface 的实例,例如:
HelloWorldImplService helloService = new HelloWorldImplService();
HelloWorld hello = helloService.getHelloWorldImplPort();
这里我们HelloWorld
是一个接口,它提供了来自WSDL的web-service的所有方法。然后你就会得到它,你可以用它来调用网络服务。只是不要忘记,您可能必须覆盖 Web 服务客户端的默认 IP 地址,如果它不是您需要的。
您可能需要的唯一附加文档是一些提供有关 Web 服务业务目的信息的文档,这些文档可能对与此 Web 服务交互的开发人员有用。
您可以简单地从用 @WebServiceClient
注释的 class 创建一个服务客户端对象,并使用参数调用相关方法。
WebServiceClient client = new WebServiceClient();
AnswerType answer = client.GetSoap().theMethodYouWantUse(some_parameters);