利用免费weather service编写java天气预报客户端


1. 新建java project,命名为weather_client

    新建一个weather.wsdl,内容为网络上提供免费weather web service的wsdl文件内容

    找到提供免费weather web service的地址,例如:

http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?WSDL,将内容全部拷贝,粘贴到weather.wsdl文件里


2. 生成weather service的代码

命令行下进入java project目录的src目录下,然后输入: wsimport -keep C:\WorkSpace\weather_client\weather.wsdl运行

如果报错提示:

[ERROR] undefined element declaration 's:schema'
  line 45 of file:/C:/WorkSpace/weather_client/weather.wsdl

应该是weather service是用.net编写的,如果用java来调用,则需要将

  <s:element ref="s:schema" />

修改为:

<s:any minOccurs="2" maxOccurs="2"/


3. 生成java代码后,新建测试类,代码如下:

weather.wsdl里搜索wsdl:service,找到此节点下name="WeatherWS",此类为整个client端调用入口。


public class ClientTest {

public static void main(String[] args) {
WeatherWS weatherWS = new WeatherWS();
WeatherWSSoap weatherWSSoap = weatherWS.getWeatherWSSoap();
ArrayOfString list = weatherWSSoap.getWeather("无锡", null);
if(list != null){
List<String> weather = list.getString();
for(String s: weather){
System.out.println(s);
}
}
}
}


运行后输出如下内容:

江苏 无锡
无锡
2002
2016/10/26 13:14:59
今日天气实况:气温:19℃;风向/风力:东北风 1级;湿度:100%
紫外线强度:最弱。空气质量:良。
紫外线指数:最弱,辐射弱,涂擦SPF8-12防晒护肤品。
感冒指数:易发,天冷湿度大,注意增加衣服。
穿衣指数:较舒适,建议穿薄外套或牛仔裤等服装。
洗车指数:不宜,有雨,雨水和泥水会弄脏爱车。
运动指数:较不宜,有较强降水,请在室内进行休闲运动。
空气污染指数:良,气象条件有利于空气污染物扩散。


10月26日 中到大雨转中雨
17℃/19℃
东北风3-4级
22.gif
8.gif
10月27日 中雨转小雨
16℃/19℃
东风3-4级
8.gif
7.gif
10月28日 小雨
14℃/19℃
北风4-5级转3-4级
7.gif
7.gif
10月29日 阵雨
12℃/16℃
北风转东北风3-4级
3.gif
3.gif
10月30日 阵雨
13℃/16℃
东北风3-4级
3.gif
3.gif

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值