如何创建肥皂客户端?

Hem*_*lia 8 java soap-client

我有SOAP服务器运行.我需要为服务器编写一个SOAP客户端.你能否在eclipse中建议插件或给我相关的URL?

你能告诉我你有任何样本SOAP客户端代码吗?

我的SOAP客户端应该使用复杂对象作为SOAP函数的parmeter/arguments,它在SOAP服务器中公开.

Chr*_*lma 5

假设Java:

1.- 执行:

wsimport -keep -p myClient url_to_wsdl
Run Code Online (Sandbox Code Playgroud)

其中 myClient 将是一个包含生成的客户端工件的文件夹。url_to_wsdl 指向您的 WSDL 的 url。

2.- 使用以下代码的方法创建客户端类:

    YourServiceClass service = new YourServiceClass();
    YourEndpointClass port = service.getPort();
    YourRequestClass request = new YourRequestClass();
    YourMessageClass message = new YourMessageClass(); //In case you have it
    message.setParam1(param1); //depending on your message
    message.setParam2(param2);

    request.setMessage(message);
    YourResponseClass response = port.ServiceOperation(request); //This call locks execution

    System.out.println(response.getMessage().getResponse());
Run Code Online (Sandbox Code Playgroud)
  • YourServiceClass是生成的工件,它扩展了 javax.xml.ws.Service。

  • YourEndpointClass可以在调用 super.getPort() 的操作中的 YourServiceClass 中看到;

  • YourRequestClassYourResponseClass将取决于如何管理请求和响应消息。

  • YourMessageClass将是您的消息的包装类(取决于 WSDL)。

所有Your* 类都必须由wsimport您的客户端类生成并导入到您的客户端类中。使用标志-keepwsimport您将能够查看.java文件并确定完成此代码所需的类。


zen*_*ngr 4

您的问题非常模糊,因此请使用Apache CXF并按照本教程进行操作:

  1. 这是最新的 (2011) 文章:使用 Apache CXF 或 GlassFish Metro 创建 SOAP 客户端
  2. 如何使用 CXF 和 Maven 在 Java 中创建 WSDL-first SOAP 客户
  3. 该演示说明了 Apache CXF 对 SOAP 标头的支持

否则,您也可以使用 Apache AXIS2。