說起PowerBuilder,可能大家都會嗤之以鼻,然後說一句:“哥們,還用呢啊”?記得以前看過的電影“功夫熊貓“裏說:存在即是合理。我想說得是,世界上如果這個東西或這件事情存在,一定有它的道理,好像扯得有些遠啊。。。。
好了,言歸正傳,PowerBuilder在Net沒有成勢之前,還是非常火的,因此,至今還有的公司在用它來開發,有人問,爲什麼不換呢。每個公司的情況都不相同,總有這種或那種的原因存在,導致無法更換,這點我們不去研究。
而現在WebService非常火,如果將兩者結合起來呢,比如:用Net寫好的WebService被Pb調用,而且還可以發佈成接口形式,被其他公司所調用,合樂而不爲呢?
先說一下開發環境:32位Win7旗艦版+PB11.5
其實在PB10.0出來時候,就已經支持調用WebService方式了。如下面步驟即可實現調用。
l 步驟1
在Net中創建一個WebService方法,用於被Pb調用,如圖-1所示
圖-1
l 步驟2
將此WebService發佈,最好發佈成IIS方式,如圖-2所示。
圖-2
這裏有一點說明下,發佈成IIS以後,是可以直接在瀏覽器裏打開的,但它的後綴是asmx,而PB需要的是wsdl方式,就是說如何生成Wsdl文件?如下圖-3所示,另存爲即可並將這個文件存儲起來。
圖-3
好了,準備工作基本完成
l 步驟3
創建PB的解決方案文件,如圖-4所示
圖-4
這裏面要必須引用一個pbwsclient11.pbd文件,不然,會調用不成功。這個文件在安裝路徑裏就可以找到。
l 步驟4
從此步開始,我們按照創建對象創建一步一步操作即可,如下圖列表所示
如圖-5所示,選擇Web Service Proxy Wizard圖標
如圖-6,這個選項勾不勾沒有關係
如圖-7,這個就要輸入我們生成好的WSDL文件路徑了(絕對路徑)
如圖-8所示,如果能到這裏,就基本沒有問題了
如圖-9所示,到這裏時,一定要編譯下,就是保存圖標的後面一個圖標,餘下事情就是編寫代碼,如圖-10所示 ,是最終樣子。
圖-10
l 步驟5
創建一個CustomObject對象,聲明一個方法,直接調用即可,如圖-11所示
圖-11
l 步驟6
就可以像調用PB本身方法一樣調用了。如圖12和13
圖-12
圖-13
源碼如下