根據wsdl生成服務端代碼


場景描述

最近在和一家公司做業務接口對接,由他們那邊回調我們這邊,對方直接扔過來一個webservice的wsdl文件,讓我們按照他們的規范來做webservice服務,
大多數的對接應該是我們創建完服務端的webservice服務,讓其他公司根據我們的wsdl文件去開發客戶端,但是,大公司就是這樣,必須要按照他們的規范來。
那問題來了,怎么根據wsdl文件創建服務端呢?

查看wsdl文件的順序是從下往上

請大家銘記查看wsdl文件的順序是從下往上看的,不然,你會看懵逼的。

第一步:確定接口的名稱

service節點上的name屬性值就是這個接口類的名稱;

也就是說如果你要根據wsdl文件創建服務端的話就需要你去創建一個名字為:IHelloWord的接口。

第二步:確定接口中都有哪些方法以及方法的名稱

找binding節點下的operation子節點中的name屬性值

一個operation節點就代碼一個方法,也就是在接口中聲明幾個方法。

第三步:確定接口中方法的參數類型,順序

假設我要找sayHello方法的參數類型和順序;

1:找出binding節點對應的porttype節點

2:找出porttype中每一個operation中的input和output對應的message

3:找到message中對應


從上面圈住的部分可以看出來:
sayHello方法有兩個參數,第一個參數的類型為String,第二個參數的類型為int。
可以對比一下接口中的方法:

第四步:找出這個服務類中方法的返回值類型

1:找出這個方法所在的porttype節點

2:找出這個porttype中operation中的output指向的message節點

3:找到tyeps節點下name屬性值為sayHelloResponse的element節點


從上圖中圈住的部分就可以看出,這個返回值為String類。
對比java代碼;

第五步:確定對外提供服務的url地址

service中的address節點中有一個location的地址就是對外提供調用的地址

這里的url的第一級目錄和二級目錄會影響我們的配置;
一級目錄影響的是:web.xml中監聽器的匹配規則

二級目錄影響的是:注冊webservice服務的時候指定的名稱


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM