webService之调用天气接口
步骤 1 : 创建一个Java项目
步骤 2 : 调用网上的一个接口
步骤 3 : 找到一个天气接口
步骤 4 : 查看天气接口的wsdl文件
步骤 5 : 在CMD中找到java项目的src
步骤 6 : 生成客户端文件
(注意:因为有些wsdl文件的schema约束会报错。解决方法:请看最后的解决方法)
步骤 7 : 客户端代码已生成
步骤 8 : 测试
package com.bwie.client.Test;
import cn.com.webxml.ArrayOfString;
import cn.com.webxml.WeatherWS;
import cn.com.webxml.WeatherWSSoap;
public class ClientTest {
public static void main(String[] args) {
WeatherWS weatherWS = new WeatherWS();
//代理对象
WeatherWSSoap weatherWSSoap = weatherWS.getWeatherWSSoap();
//传地区名称
ArrayOfString weather = weatherWSSoap.getWeather("北京",null);
//输出当天的天气状况
System.out.println(weather.getString());
}
}
步骤 9 : 测试结果
s:schema约束的错误及解决的方法
原因分析:
有的天气接口会报schema约束的错,约束的问题。
解决方案:
把网上的wsdl文档里的内容全复制下来,新创建一个文件,粘贴。然后,把文件里所有的<s:element ref="s:schema"/>改成<s:any minOccurs="2" maxOccurs="2"></s:any>.
注意:
改完之后,将改好的wsdl文件放到项目中,然后用本地的wsdl文件生成客户端文件