给定WSDL文件,通过Internet使用Web服务的步骤是什么?

时间:2010-03-08 19:41:43

标签: java web-services wsdl

我得到了一个WSDL文件,我需要通过互联网使用这个WSDL文件来使用Web服务。我需要在Java中这样做。

有人可以告诉我这样做的步骤吗?我也很感激一些有用的链接。

5 个答案:

答案 0 :(得分:11)

我会使用JAX-WS(请,忘记 Axis或Axis 2,请参阅previous answers),好消息是Java 6包含JAX -WS RI所以你已经拥有了所需的一切,无所事事。换句话说,只需使用wsimport生成调用Web服务所需的类。

  

实施例

wsimport -p stockquote http://stockquote.xyz/quote?wsdl
     

这将生成Java工件   并通过导入来编译它们   http://stockquote.xyz/quote?wsdl

调用Web服务的问题是三行代码(不包括WS参数的初始化)。有关示例,请参阅Java EE教程中的Creating a Simple Web Service and Client with JAX-WSGetting Started with JAX-WS Web ServicesDeveloping JAX-WS Web Service Clients

答案 1 :(得分:4)

第一步是生成可以与此Web服务通信的类。看看Axis2等开源解决方案。这将为您生成存根以便与代码中的Web服务进行通信...然后,您可以使用此服务。

答案 2 :(得分:1)

如果您使用IDE,将会很有帮助。例如,在Netbeans中,您可以关注this tutorial并轻松完成您的要求。它在Eclipse中同样容易。

Axis的

Here is an Eclipse plugin(在其他答案中提到)。

答案 3 :(得分:0)

我还没有用Java做过这个,但是多年前我做的就是使用一个名为Axis的命令行工具(我相信实际命令是wsdl2java)。您运行将url传递给wsdl作为参数的命令,它将生成您可以在应用程序中使用的代理类。

你应该对此进行一些研究而不是仅仅获得一个勺子喂养的解决方案,但基本上你最终会得到某种能够自动为你生成课程的工具。您可以使用这些类与服务进行交互,这样您甚至根本不需要知道您正在与服务进行交互。

答案 4 :(得分:0)

有一个名为“wsimport”的命令行工具与你的jdk捆绑在一起(如果你使用的是1.6,但不确定版本)。它与Apache Axis中的wsdl2java类似,但它生成更清晰的代码(imho)。