我今天作了這個「PB建立及調用WebService」的小做業,下面我來分享一下個人整個實踐過程以及我遇到的問題,但願對你們有所幫助,這個小做業是分如下三部來完成的:html
1、構建WebServiceweb
①建立Workspace,Workspace命名爲:Your_WebService瀏覽器
![]() |
②創建.NET Web Service Target,這一步只須要一路Next便可函數
![]() |
最後生產的項目文件中至少包含三項,一個webservice2應用,一個p_webservice2部署,一個n_webservice2用戶對象,如圖所示:佈局
![]() |
③而後在這個n_webservice2對象中寫本身的公開函數(只需雙擊n_webservice2便會出現以下界面):編碼
將你寫好的函數保存,你會發現它出如今n_webservice2這個對象的Functions列表中:spa
![]() |
2、發佈WebService.net
①部署web service,打開p_webservice2,能夠看到有幾個屬性頁,其中有一個「objcet」頁,能夠看到你要發佈的函數列表。在你要發佈的函數名前打勾;而後點擊菜單design->deploy project,便可部署webservice,但前提你必須有iis和.net。htm
如出現IIS或.NET相關錯誤,fail to Deploy of p_webservice2時,請參考相關資料:http://jingyan.baidu.com/article/b2c186c8ccc670c46ef6ff91.html對象
若是部署成功,你的WebService就基本沒什麼問題啦,可在瀏覽器輸入下圖所示連接檢查你的WebService部署是否成功?
![]() |
部署成功就是這樣嗒:add函數就是你以前在n_webservice2對象中寫的公開函數
![]() |
②將webservice配置導出來(以http://localhost/webservice2/n_webservice2.asmx?WSDL爲例)
在網址中輸入「http://localhost/webservice2/n_webservice2.asmx?WSDL」這個就是咱們要導出的文件,以下圖
而後咱們將該網頁存儲爲wsdl文件(注意:該文件要與你的WebService存在同一目錄下),這樣配置文件就創建好了。
![]() |
3、調用WebService
無論是用VS開發的基於.NET的WebService,仍是用Java開發的WebService,仍是用PB自己開發的.NET Web Service,PB調用WebService的原理是同樣的,都是經過WSDL訪問WebServices。
①構建環境
1)將「n_webservice2.wsdl」放到程序目錄(若是上一步該文件存放位置正確,可忽略這一步),
2)將pb安裝目錄下的「pbsoapclient115.pbd」文件拷貝到程序目錄(pb9.0對應的是pbsoapclient90.pbd,pb11.5對應的是pbwsclient115.pbd)
②PB程序調用
1)將pbsoapclient115.pbd引用到pb程序,具體步驟以下:
![]() |
![]() |
2)還須要添加一個.pbd格式的文件,這個文件名是:webservice2.pbd,這個庫在你後續編碼調用函數時會給出提示,若是沒有添加該項,後續窗口運行會出錯,這一步很關鍵
![]() |
![]() |
添加webservice引用(按照步驟走就好了,下面我只對須要注意的地方進行標註)
到第二步,出現下面的界面,選中wsdl文件,以下圖
下面的界面,選擇本身已發佈的服務便可:
下面的界面,不用填便可(若是填了好比soap,那麼生成的名字就是soapservice2soap,後面的名字是固定的,不填只顯示紅色的內容)
下面按默認便可,
這裏選擇你存放的類庫:
完成以後,以下圖:
3)選中p_webservice2_wsproxy,選擇菜單欄中Designe—>Deploy Project,生成n_webservice2soap文件,
4)構建方法調用n_webservice2soap,添加「Custom Class」
函數體:
函數保存後以下圖:
5)最後一步,在同一空間下新創建應用窗體,並添加webservice2.pbl類庫(添加類庫很重要,我就是卡在這一步,不知道怎麼調用WebService,調用類庫是個很簡潔的方法)
在新建Application,Window後,在窗口布局界面拉一個Button,拉一個文本框,在Button的Click事件中寫以下代碼,WebService就調用成功了:
調用成功結果圖: