互聯(lián)網(wǎng)上面有很多的免費(fèi)webService服務(wù),我們可以調(diào)用這些免費(fèi)的WebService服務(wù),將一些其他網(wǎng)站的內(nèi)容信息集成到我們的Web應(yīng)用中顯示,下面就以獲取天氣預(yù)報(bào)數(shù)據(jù)和查詢國內(nèi)手機(jī)號碼歸屬地為例進(jìn)行說明。
洛陽網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),洛陽網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為洛陽1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個(gè)售后服務(wù)好的洛陽做網(wǎng)站的公司定做!氣象中心的管理系統(tǒng)將收集的天氣信息并將數(shù)據(jù)暴露出來(通過WebService Server), 而各大站點(diǎn)的應(yīng)用就去調(diào)用它們得到天氣信息并以不同的樣式去展示(WebService Client).
http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx 訪問結(jié)果如下圖所示:
找到WebService的wsdl描述,通過URL地址http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl:如下:
1、借助wsimport命令工具自動生成客戶端代碼
創(chuàng)建一個(gè)測試項(xiàng)目,如下:
打開命令行窗口,切換到項(xiàng)目的src目錄,執(zhí)行"wsimport -keep http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl"生成客戶端代碼,如下圖所示:
運(yùn)行結(jié)果顯示,使用wsimport工具直接生成客戶端代碼會拋異常, 無法生成客戶端代碼, 只是因?yàn)槲覀円{(diào)用的WebService是用.net寫的,這個(gè)是Java調(diào)用net的webservice都有的問題,這個(gè)問題的解決辦法如下:
將對應(yīng)的wsdl文檔保存到本地
2、修改wsdl文檔的部分內(nèi)容:將 <s:element ref="s:schema" /><s:any /> 替換成 <s:any minOccurs="2" maxOccurs="2"/>
再次執(zhí)行wsimport生成代碼,這次使用保存在本地的WeatherWS.wsdl文件來進(jìn)行生成,如下圖所示:
從執(zhí)行結(jié)果顯示,這一次可以正常生成代碼了,刷新一下src目錄,就可以看到生成的代碼了,如下圖所示:
2、借助生成的代碼編寫請求代碼
1 package me.gacl.ws.client; 2 3 import java.util.List; 4 5 import cn.com.webxml.ArrayOfString; 6 import cn.com.webxml.WeatherWS; 7 import cn.com.webxml.WeatherWSSoap; 8 9 public class WeatherWSClient {10 11 public static void main(String[] args) {12 //創(chuàng)建一個(gè)WeatherWS工廠13 WeatherWS factory = new WeatherWS();14 //根據(jù)工廠創(chuàng)建一個(gè)WeatherWSSoap對象15 WeatherWSSoap weatherWSSoap = factory.getWeatherWSSoap();16 //調(diào)用WebService提供的getWeather方法獲取南寧市的天氣預(yù)報(bào)情況17 ArrayOfString weatherInfo = weatherWSSoap.getWeather("南寧", null);18 List<String> lstWeatherInfo = weatherInfo.getString();19 //遍歷天氣預(yù)報(bào)信息20 for (String string : lstWeatherInfo) {21 System.out.println(string);22 System.out.println("------------------------");23 }24 }25 }
訪問結(jié)果如下:
廣西 南寧 ------------------------ 南寧 ------------------------ 2391 ------------------------ 2015/01/29 19:00:49 ------------------------ 今日天氣實(shí)況:暫無實(shí)況 ------------------------ 空氣質(zhì)量:暫無;紫外線強(qiáng)度:最弱 ------------------------ 太陽鏡指數(shù):不需要。白天光線弱不需要佩戴太陽鏡。 穿衣指數(shù):較舒適。建議穿薄外套或牛仔褲等服裝。 旅游指數(shù):適宜。溫度適宜,可盡情享受大自然風(fēng)光。 運(yùn)動指數(shù):較適宜。較適宜進(jìn)行各種戶內(nèi)外運(yùn)動。 洗車指數(shù):不宜。有雨,雨水和泥水會弄臟愛車。 化妝指數(shù):保濕。請選用中性保濕型霜類化妝品。 感冒指數(shù):較易發(fā)。天較涼,增加衣服,注意防護(hù)。 空氣污染指數(shù):暫無。 紫外線指數(shù):最弱。輻射弱,涂擦SPF8-12防曬護(hù)膚品。 舒適度指數(shù):舒適。白天不冷不熱,風(fēng)力不大。 ------------------------ 1月29日 多云 ------------------------ 11℃/15℃ ------------------------ 東北風(fēng)微風(fēng) ------------------------ 1.gif ------------------------ 1.gif ------------------------ 1月30日 小雨轉(zhuǎn)陰 ------------------------ 10℃/15℃ ------------------------ 東北風(fēng)微風(fēng) ------------------------ 7.gif ------------------------ 2.gif ------------------------ 1月31日 多云 ------------------------ 11℃/13℃ ------------------------ 東北風(fēng)微風(fēng) ------------------------ 1.gif ------------------------ 1.gif ------------------------ 2月1日 多云 ------------------------ 12℃/17℃ ------------------------ 東北風(fēng)微風(fēng) ------------------------ 1.gif ------------------------ 1.gif ------------------------ 2月2日 陰轉(zhuǎn)多云 ------------------------ 13℃/18℃ ------------------------ 東北風(fēng)微風(fēng) ------------------------ 2.gif ------------------------ 1.gif ------------------------
這樣,我們通過生成的Client代碼調(diào)用了第三方提供的webService服務(wù)獲取到了南寧市的天氣預(yù)報(bào)信息。
http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx 如下所示:
找到WebService的wsdl描述信息,通過URL地址http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl:如下:
1、創(chuàng)建客戶端項(xiàng)目
2、根據(jù)WebService的wsdl描述生成客戶端代碼
打開命令行窗口,切換到Phone_Client的src目錄,執(zhí)行wsimport -keep http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl 如下圖所示:
這次可以直接使用wsdl生成代碼,不再需要將wsdl文件下載到本地進(jìn)行修改了,這個(gè)WebService應(yīng)該不是使用.net寫的,生成的代碼如下:
3、借助生成的代碼編寫請求代碼
1 package me.gacl.ws.client; 2 3 import cn.com.webxml.MobileCodeWS; 4 import cn.com.webxml.MobileCodeWSSoap; 5 6 public class PhoneWsClient { 7 8 public static void main(String[] args) { 9 //創(chuàng)建一個(gè)MobileCodeWS工廠10 MobileCodeWS factory = new MobileCodeWS();11 //根據(jù)工廠創(chuàng)建一個(gè)MobileCodeWSSoap對象12 MobileCodeWSSoap mobileCodeWSSoap = factory.getMobileCodeWSSoap();13 ////調(diào)用WebService提供的getMobileCodeInfo方法查詢手機(jī)號碼的歸屬地14 String searchResult = mobileCodeWSSoap.getMobileCodeInfo("15177196635", null);15 System.out.println(searchResult);16 }17 }
運(yùn)行結(jié)果如下:
這樣我們調(diào)用第三方提供的WebService服務(wù)成功查詢到了手機(jī)號碼的歸宿地。
以上就是如何調(diào)用第三方WebService的相關(guān)內(nèi)容。
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。
網(wǎng)頁題目:WebService-—調(diào)用第三方提供的webService服務(wù)-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://jinyejixie.com/article14/dsisge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、全網(wǎng)營銷推廣、外貿(mào)建站、建站公司、網(wǎng)站制作、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容