更新時間:2022-11-28 12:25:57 來源:動力節點 瀏覽7990次
WebService遵循SOAP協議通過XML封裝數據,然后由Http協議來傳輸數據。通常要調用WebService接口需要暴露一個wsdl文檔來告訴調用者,可以調用什么方法,需要什么參數,返回值類型等。文檔地址通常以wsdl結尾。
如http://www.webxml.com.cn/webservices/DomesticAirline.asmx?wsdl,可以通過瀏覽器打開,如下圖所示:
調用方法名
調用方法名,在webservice暴露的wsdl文檔中給出,配合命名空間使用調用接口
命名空間
規范webservice接口,方便調用者調用。
參數
參數就是,調用該接口需要提供的參數。
參數類型
參數類型就是,調用該接口需要提供參數的類型。
如上圖所示,wsdl文檔描述的接口信息。下面開始wsdl接口的調用。
1.引入依賴
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.22</version>
</dependency>
2.代碼調用
//wsdl文檔地址
String wsdlUrl = "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl";
//創建soap客戶端
SoapClient soapClient = SoapClient.create(wsdlUrl)
// 設置調用方法名稱以及命名空間
.setMethod("getWeatherbyCityName", "http://WebXml.com.cn/")
// 設置參數名稱及參數值
.setParam("theCityName", "深圳")
// 設置超時時間
.setConnectionTimeout(15000)
.setReadTimeout(15000)
.timeout(15000);
// 還有其他可以配置,根據自己的需求配置
// 調用webservice接口
String result = soapClient.send();
// 打印
System.out.println(result);
3.結果
其他方式調用:
IDEA生成調用類調用接口
CXF調用
RPC調用
HttpClinet調用
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習