如何在不为其创建任何客户端的情况下调用Web服务?

时间:2014-10-09 11:33:56

标签: java web-services

我在google上搜索但没有找到任何有用的文章。 我想调用webservice方法。我有wdsl,我必须动态调用而不创建任何存根。任何示例都会更有帮助。

3 个答案:

答案 0 :(得分:1)

有趣的问题。经过一番研究后,我在github上找到了这个项目,似乎满足了你的需求。

https://github.com/reficio/soap-ws

以下是github网站的一些示例代码,看起来非常简单明了。

在60秒内消耗Web服务

让我们使用CurrencyConverter Web服务。由于流畅的构建器,API具有直观和直观的特点。需要解释吗?欢迎来到soap-ws:)

Wsdl wsdl = Wsdl.parse("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL");

SoapBuilder builder = wsdl.binding()
    .localPart("CurrencyConvertorSoap")
    .find();
SoapOperation operation = builder.operation()
    .soapAction("http://www.webserviceX.NET/ConversionRate")
    .find();
Request request = builder.buildInputMessage(operation)

SoapClient client = SoapClient.builder()
    .endpointUrl("http://www.webservicex.net/CurrencyConvertor.asmx")
    .build();
String response = client.post(request);

答案 1 :(得分:1)

希望您正在搜索调用Web服务的工具。更好的用户Soap UI Soap UI是一个充当客户端以连接Web服务的工具。

答案 2 :(得分:0)

Soap Ui是一个用于测试生成的Web服务的应用程序。你只需要Wsdl来做同样的事情 here是一个链接。

  1. 右键单击生成的wsdl>以>运行在服务器上运行。

  2. 从浏览器的地址栏中复制网址。

  3. 打开soap iu并点击新项目。

  4. 将网址粘贴到wsdl列中。

  5. 将列出项目名称和方法。

  6. 展开方法并点击request1。

  7. 输入"?"中的值这是该方法的参数。

  8. 点击“运行”按钮。

  9. 这是一种模拟在不创建客户端的情况下创建的Web服务的方法。 soap Ui应用程序可以作为客户端工作。 希望这会有所帮助。