Kettle通過Webservice獲取天氣信息
需求:
通過kettle工具,通過webservice獲取天氣信息,寫成xml格式文件。
思路:
Kettle可通過兩種選擇獲取webservice結果,一種是web服務查詢(web service lookup),還一種是利用HTTP POST,本文介紹的是使用web服務查詢的方式,數據來源為http://www.webxml.com.cn/WebServices/WeatherWebService.asmx。
實現步驟:
檢查http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl,確認需要調用的webservice接口,相關請求和響應。
如上圖所示,請求的參數為theCityName,string型。
響應為getWeatherbyCityNameResult,ArrayOfString型。
因此實現方法如下:
生成記錄
主要配置"限制"為1,即生成一條記錄,用於下一步參數所需即可。
Web 服務查詢
輸入url后加載,選擇getWeatherbyCityName操作。
注意v2.x/3.0兼容模式要取消勾選。
注意此處輸出選擇了getWeatherbyCityNameResult的ArrayOfstring類型,將信息一次輸出,如果通過"獲取字段",只能獲得一行記錄。
Xml文件輸出
"內容","字段"頁保持默認即可。
文本文件輸出
注意"頭部"取消了勾選狀態
結果檢查:
執行后,兩個文件輸出的內容分別為(截圖):
后續:
可通過讀取xml數據,將天氣相關信息寫入倉庫維表。