利用java webservice调用天气预报实践

最近要和其他业务系统进行数据交换,选择了webservice方案,于是查了一下网上的用法。首先是做一个天气的查询例子,看着挺简单,可实际动手做起来发现坑很多,费了半天劲终于调通了,于是记录下来。

1,在eclipse里新建一个java项目,在src里添加一个文件,命名为WeatherWebService.wsdl。

 

 

2,在浏览器中访问地址:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl,这个是天气预报的webservice描述地址。复制里面的内容,注意从<wsdl:definitions 标签开始复制一直到<wsdl:definitions标签结束。粘贴到java项目的文件WeatherWebService.wsdl中。

3,此时重点来了,选中文件,右键选择web service-generate client会弹出以下窗口

 

 

,如果没有错误提示直接点击Finish按钮即可完成引用。但往往是会有一个错误提示无法完成,这时候注意点来了,刚才拷贝过来的内容需要改动一些内容才能继续。

3.1 首先是把注释的标签删除,内容大概是:<a href="http://www.webxml.com.cn/" target="_blank">WebXml.com.cn</a> <strong>天气预报 Web 服务

3.2 将所有的<br>标签替换成<br/>

4 这时候就会自动生成引用的相关代码:

 

 

5 这时候就可以写一个调用的测试代码了,新建一个测试类,在main函数里编写一个得到北京天气的测试代码。

public static void main(String[] args) throws ServiceException, RemoteException {
// TODO Auto-generated method stub

WeatherWebService service1=new WeatherWebServiceLocator();
WeatherWebServiceSoap serviceSoap= service1.getWeatherWebServiceSoap();
String[] cityweather= serviceSoap.getWeatherbyCityName("北京");
for (String s : cityweather) {
System.out.println(s);
}

}

结果:

 

 

转载于:https://www.cnblogs.com/liulibo/p/9745150.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值