使用Java中的WSDL访问Web服务的最快方法

时间:2011-06-08 14:59:58

标签: java soap wsdl spring-ws

我需要从Java访问Web服务。 The service has a WSDL。现在我如何调用它的操作?

  • 我已经在其上使用了wsimport,但是它只为操作/响应生成XML对象,实际上没有任何内容可以调用它们。
  • 我看过Spring-WS,但它看起来并不像我想要的那样(尽管它可能是解决方案的一部分)。 “wsdl”这个词根本没有出现在该页面中。

3 个答案:

答案 0 :(得分:3)

wsimport不仅生成与服务通信所需的对象,还生成服务客户端。创建类MSaleService的实例,并使用getMSaleServiceSoap()获取端口。就是这样。

可能会出现一些问题。 wsimport抱怨

  

[警告] SOAP端口“MSaleServiceSoap12”:使用非标准SOAP 1.2绑定   http://vas.mikro-odeme.com/services/msaleservice.asmx?wsdl

的第530行

但我不知道这是否会带来真正的问题。

答案 1 :(得分:0)

以下是我发现的快速链接

http://download.oracle.com/javaee/1.4/tutorial/doc/JAXRPC5.html

基本上,这种类型的调用是调用动态调用,而 NOT 需要知道WSDL apriori。

答案 2 :(得分:0)

如果您使用Eclipse,那么这个向导就可以通过指向您的wsdl文件来创建所谓的新“Web服务客户端”。

所以如果你的项目中有wsdl,那么只需点击“new”并选择向导。

它会问你wsdl文件和其他一些信息(你可以选择你的运行时-Axis,Axis2,CXF ......)。

我认为这个向导是WTP的一部分(www.eclipse.org/webtools)。

看看:

http://tinyurl.com/5v56s5u

http://www.eclipse.org/webtools/jst/components/ws/1.5/tutorials/WebServiceClient/WebServiceClient.html