我已经在java中工作了一段时间,我现在正在做的项目需要从Web服务中获取数据(好吧,我之前从未在Web服务中工作过:D)。我有一个 wsdl 文件以及 wsdl 文件的链接。我想知道如何在我的 java 程序中使用 web 服务的输入变量调用 web 服务。
先感谢您。
我已经在java中工作了一段时间,我现在正在做的项目需要从Web服务中获取数据(好吧,我之前从未在Web服务中工作过:D)。我有一个 wsdl 文件以及 wsdl 文件的链接。我想知道如何在我的 java 程序中使用 web 服务的输入变量调用 web 服务。
先感谢您。
您可以使用 jaxws 实用程序和已发布的 wsdl 生成 Web 服务客户端类
例如
就像是
wsimport -target 2.2 -s C:\temp\outputcode -p com.package.name http://1.2.3.4/jaxsws/wsname?wsdl
这会将类放入您可以在项目中使用的 C:\temp\outputcode。
寻找一个扩展服务的类。这将有许多允许覆盖 WSDL 位置的构造函数。
从服务中,您可以获得 Web 服务端口的句柄(代理)。(这将是一个生成的接口,其方法对应于 wsdl 中的 Web 服务方法)。然后调用该方法,这将调用 Web 服务。
这里有一些进一步的信息 wsimport 生成的客户端如何工作?
您也可以使用轴 wsdl2java 以及下载轴2,您可以使用 wsdl2java 工具并传递您的 wsdl 文件路径/url,它将生成客户端工件(java 存根),您可以使用这些存根调用所需的 web 服务
(但在开始之前,我建议您深入挖掘更多 abt webservices 和 wsdl,您还可以使用 Soapui(使用 wsdl)快速测试 web 服务,这将阐明 web 服务是否返回您正在寻找的内容)
混乱..
有一些非常棒的 IDE 可以轻松完成这项工作。尝试查看 Netbeans 或 IntelliJ IDEA。