天天看点

java调用第三方的webservice应用实例

互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示。

一些常用的webservice网站的链接地址:         http://www.tuicool.com/articles/iIfqma

一:调用免费的web service获取天气预报信息    

1.第三方服务地址

http://www.webxml.com.cn/WebServices/WeatherWebService.asmx 

java调用第三方的webservice应用实例

  http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

java调用第三方的webservice应用实例

2.生成本地桩(借助wsimport命令工具自动生成客户端代码)

java调用第三方的webservice应用实例
java调用第三方的webservice应用实例

 运行结果显示,使用wsimport工具直接生成客户端代码会抛异常, 无法生成客户端代码, 只是因为我们要调用的WebService是用.net写的,这个是Java调用net的webservice都有的问题,这个问题的解决办法如下:

将对应的wsdl文档保存到本地

  

java调用第三方的webservice应用实例

  2、修改wsdl文档的部分内容:将 <s:element ref="s:schema" /><s:any /> 替换成 <s:any minOccurs="2" maxOccurs="2"/>

java调用第三方的webservice应用实例

  再次执行wsimport生成代码,这次使用保存在本地的WeatherWS.wsdl文件来进行生成,如下图所示:

java调用第三方的webservice应用实例

  从执行结果显示,这一次可以正常生成代码了,刷新一下src目录,就可以看到生成的代码了,如下图所示:

java调用第三方的webservice应用实例

 3.借助生成的代码编写请求代码

 测试结果:

 以上,就是一个完整的第三方的webservice服务的调用的实例。