java调用第三方的webservice应用实例
互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示。
一些常用的webservice网站的链接地址: http://www.tuicool.com/articles/iIfqma
一:调用免费的web service获取天气预报信息
1.第三方服务地址
http://www.webxml.com.cn/WebServices/WeatherWebService.asmx
http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
2.生成本地桩(借助wsimport命令工具自动生成客户端代码)
打开命令行窗口,切换到项目的src目录,执行"wsimport -keep http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl"生成客户端代码,如下图所示:
运行结果显示,使用wsimport工具直接生成客户端代码会抛异常, 无法生成客户端代码, 只是因为我们要调用的WebService是用.net写的,这个是Java调用net的webservice都有的问题,这个问题的解决办法如下:
- 将对应的wsdl文档保存到本地
2、修改wsdl文档的部分内容:将 <s:element ref="s:schema" /><s:any /> 替换成 <s:any minOccurs="2" maxOccurs="2"/>
再次执行wsimport生成代码,这次使用保存在本地的WeatherWS.wsdl文件来进行生成,如下图所示:
从执行结果显示,这一次可以正常生成代码了,刷新一下src目录,就可以看到生成的代码了,如下图所示:
3.借助生成的代码编写请求代码
package me.gacl.ws.client;import java.util.List;import org.junit.Test;import cn.com.webxml.ArrayOfString; import cn.com.webxml.WeatherWebService; import cn.com.webxml.WeatherWebServiceSoap;public class WeatherWSClient {public static void main(String[] args) {// 创建一个WeatherWS工厂WeatherWebService factory = new WeatherWebService();// 根据工厂创建一个WeatherWSSoap对象WeatherWebServiceSoap weatherWSSoap = factory.getWeatherWebServiceSoap();// 调用WebService提供的getWeather方法获取南宁市的天气预报情况ArrayOfString weatherInfo = weatherWSSoap.getWeatherbyCityName("上海");List<String> lstWeatherInfo = weatherInfo.getString();// 遍历天气预报信息for (String string : lstWeatherInfo) {System.out.println(string);System.out.println("------------------------");}}//支持的行政市 @Testpublic void Test() {// 创建一个WeatherWS工厂WeatherWebService factory = new WeatherWebService();// 根据工厂创建一个WeatherWSSoap对象WeatherWebServiceSoap weatherWSSoap = factory.getWeatherWebServiceSoap();// 调用WebService提供的getWeather方法获取南宁市的天气预报情况ArrayOfString weatherInfo = weatherWSSoap.getSupportProvince();List<String> lstWeatherInfo = weatherInfo.getString();// 遍历天气预报信息for (String string : lstWeatherInfo) {System.out.println(string);System.out.println("------------------------");}}}
测试结果:
直辖市 ------------------------ 上海 ------------------------ 58367 ------------------------ 58367.jpg ------------------------ 2017-6-4 10:50:51 ------------------------ 21℃/28℃ ------------------------ 6月4日 晴转多云 ------------------------ 东风微风 ------------------------ 0.gif ------------------------ 1.gif ------------------------ 今日天气实况:气温:26℃;风向/风力:东北风 3级;湿度:53%;紫外线强度:强。空气质量:中。 ------------------------ 紫外线指数:强,涂擦SPF大于15、PA+防晒护肤品。 感冒指数:少发,无明显降温,感冒机率较低。 穿衣指数:热,适合穿T恤、短薄外套等夏季服装。 洗车指数:较适宜,无雨且风力较小,易保持清洁度。 运动指数:较适宜,请适当降低运动强度。 空气污染指数:中,易感人群应适当减少室外活动。------------------------ 22℃/25℃ ------------------------ 6月5日 中雨 ------------------------ 东南风微风 ------------------------ 8.gif ------------------------ 8.gif ------------------------ 21℃/25℃ ------------------------ 6月6日 阵雨转多云 ------------------------ 南风转西北风微风 ------------------------ 3.gif ------------------------ 1.gif ------------------------ 上海简称:沪,位置:上海地处长江三角洲前缘,东濒东海,南临杭州湾,西接江苏,浙江两省,北界长江入海,正当我国南北岸线的中部,北纬31°14′,东经121°29′。面积:总面积7823.5平方公里。人口:人口1000多万。上海丰富的人文资源、迷人的城市风貌、繁华的商业街市和欢乐的节庆活动形成了独特的都市景观。游览上海,不仅能体验到大都市中西合壁、商儒交融、八方来风的氛围,而且能感受到这个城市人流熙攘、车水马龙、灯火璀璨的活力。上海在中国现代史上占有着十分重要的地位,她是中国XXX的诞生地。许多震动中外的历史事件在这里发生,留下了众多的革命遗迹,处处为您讲述着一个个使人永不忘怀的可歌可泣的故事,成为包含民俗的人文景观和纪念地。在上海,每到秋祭,纷至沓来的人们在这里祭祀先烈、缅怀革命历史,已成为了一种风俗。大上海在中国近代历史中,曾是风起云涌可歌可泣的地方。在这里荟萃多少风云人物,散落在上海各处的不同住宅建筑,由于其主人的非同寻常,蕴含了耐人寻味的历史意义。这里曾留下许多革命先烈的足迹。瞻仰孙中山、宋庆龄、鲁迅等故居,会使您产生抚今追昔的深沉遐思,这里还有无数个达官贵人的住宅,探访一下李鸿章、蒋介石等人的公馆,可以联想起主人那段显赫的发迹史。 ------------------------
以上,就是一个完整的第三方的webservice服务的调用的实例。
java调用第三方的webservice应用实例相关推荐
- Java调用第三方webService服务
WebService Web service是一个平台独立的.低耦合的.自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些 ...
- java调用第三方天气预报API接口
java调用第三方天气预报API接口 package com.sensordata.controller; import com.common.json.JSONObject; import java ...
- Java调用第三方http接口 单点登录 HttpClient
Java调用第三方http接口的方式 Java调用第三方接口示范 范例: 响应形式: 主逻辑: 访问此地址:http:// { cas }/cas/login?service=http://local ...
- Java调用第三方dll
刚接触Java几天,项目需要,使用Java调用can卡的dll,发现网上的帖子有很多不明确的地方,特此写之. 首先安装开发环境,考虑到兼容性,安装的JDK和eclipse都是32位的,正常安装结束后, ...
- Java 调用第三方接口方法
Java 调用第三方接口方法 一. 通过JDK网络类Java.net.HttpURLConnection 1.java.net包下的原生java api提供的http请求 使用步骤: 1.通过统一资源 ...
- php调用.net webservice,PHP调用.NET的WebService 简单实例
这篇文章主要介绍了使用PHP调用.NET的WebService的一个简单实例,十分的简单,有需要的小伙伴可以自己扩展下,如有疑问请留言. 创建一个C#的web service,这个就不多说了,我用vs ...
- Java 调用第三方接口,实战来了!
在项目开发中经常会遇到调用第三方接口的情况,比如说调用第三方的天气预报接口. 1.准备工作: 在项目的工具包下导入HttpClientUtil这个工具类,或者也可以使用Spring框架的restTem ...
- java调用https的webservice,https的wsdl
java调webService太正常了... 在调用https的webService的时候几种常用的方法会出现安全错误,很多人说的是在jre里面装证书...那也太郁闷了吧 这里提供一种不用证书的方式 ...
- Java调用第三方接口示范
在项目开发中经常会遇到调用第三方接口的情况,比如说调用第三方的天气预报接口. 使用流程 [1]准备工作:在项目的工具包下导入HttpClientUtil这个工具类,或者也可以使用Spring框架的re ...
最新文章
- UIWebView保存网页中的图片(转载)
- leangoo敏捷开发看板工具
- 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)
- 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。...
- 2016_icpc_dalian_onsite
- qt给exe文件添加图标
- BZOJ1036[ZJOI2008]树的统计——树链剖分+线段树
- grid php 用法,grid布局主要用法
- 【BZOJ 1047】[HAOI2007]理想的正方形
- On my way,Python
- 宋体(Simsun)和新宋体(NSimsun)的区别
- 5G无线关键技术 — 低时延高可靠物联网设计
- 140809暑期培训
- 国内缺少一个slideshare
- 12.28 笔记 (集合) --- 耐得住寂寞
- databricks spark 读取postgresql表
- 【图像处理】基于MATLAB FCM(模糊聚类)的侧扫声呐图像分割
- 免费 SSL 安全证书
- react 逆地理 高德地图_高德官宣!海外地图服务年内上线:首批覆盖亚洲多个国家...
- 牛逼!“京东热”框架JD-hotkey开源了...
热门文章
- c++ 11.一维数组
- 概率论-2.2 随机变量的数学期望(重点:随机变量X的期望)
- 程序猿段子_【新年新气象】今年,能为程序员男友做点什么?
- 铁幕(Iron Curtain)
- Eclipse-cvs指南
- 对于Mybatis在C#.Net中个人使用的总结(一) Mybatis 的结果映射
- 我为什么雇佣家庭主妇做软件测试
- 解决wmv播放的问题
- 461在全志r16平台tinav3.0系统下使用地磁计QMC5883L
- Guava Cache探索及spring项目整合GuavaCache实例