Java调用Webservice天气预报(使用JDK自带的命令wsimport解析WSDL文件)
1.在dos命令下在xml文件且生成对应的Java API代码
在dos命令下输入
wsimport -s d:\ http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
执行此命令可能会报错
报错的原因:是由于解析s:schema有误,解决的措施:可以把对应的xml文件下载到本地,
在浏览器中输入http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
直接按ctrl+s保存xml文件到本地文件(xml文件),然后打开xml文件 ctrl+f 输入s:schema
删除xml中的<s:element ref=”s:schema” />的代码。
然后重新执行wsimport命令指向本地的XML文件
wsimport -s d:\ -p com.leo.weather E:\WeatherWebService.xml
-s代表生成的目录 -p代表文件的包路径
warning可以忽略不计,如上图显示表示客户端代码生成成功
2.通过生成的代码测试获取天气数据
操作步骤:新建一个本地的Java项目,把对应的代码复制到项目中,写一个main方法测试,
或者使用junit 用@test方法测试
这里使用main方法测试
![](//img-blog.csdn.net/20180316154138914?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L09ubHlvbmVGcmlzdA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
运行结果
![](//img-blog.csdn.net/20180316154343945?watermark/2/text/Ly9ibG9nLmNzZG4ubmV0L09ubHlvbmVGcmlzdA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)