原創(chuàng)|使用教程|編輯:龔雪|2015-04-15 09:18:38.000|閱讀 331 次
概述:MyEclipse春季特惠,全場8.5折!
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
在開發(fā)JAX-RPC Web Services for WebSphere(上)一文中,小編為大家介紹了如何創(chuàng)建一個Web服務(wù)項目、如何創(chuàng)建一個服務(wù)類和Web服務(wù),以及部署項目等內(nèi)容。接下來小編將為大家介紹另外兩節(jié)內(nèi)容,希望能夠幫助到大家。
(1)通過點(diǎn)擊相應(yīng)圖標(biāo)加載Web服務(wù)瀏覽器。
(2)在Web服務(wù)資源管理器工具欄上單擊相應(yīng)圖標(biāo),然后點(diǎn)擊單擊WSDL Main鏈接來打開Open WSDL頁面。
(3)在WSDL URL字段中輸入//localhost:9080/WebServiceProject/services/Calculator?WSDL,然后點(diǎn)擊Go。
URL被分解成以下組件:
Web服務(wù)資源管理器加載從這個Web服務(wù)中分解的所有操作。
(4)為了測試Web服務(wù),請在導(dǎo)航器中單擊Add操作來使用瀏覽器測試它。調(diào)用WSDL操作頁面出現(xiàn)在資源管理器中。該頁面顯示您正在測試的端點(diǎn)(運(yùn)算器),同時每個參數(shù)操作需要一個字段輸入測試值。
(5)在a和b字段中輸入值10和20,然后單擊Go。
在這種情況下,從Web服務(wù)的狀態(tài)會顯示30的響應(yīng)。
Web服務(wù)客戶端允許您直接與Web服務(wù)及其分解操作進(jìn)行交互,而無需編寫所有的編組或連接代碼。
在MyEclipse中,當(dāng)您生成一個Web服務(wù)時,您將在同一時間得到生成Web服務(wù)客戶端的選項。您可以在任何時間使用此功能,但是在本教程中,我們認(rèn)為更典型的情況時需要對一個已部署的Web服務(wù)創(chuàng)建一個Web服務(wù)客戶端,而不是為正在生成的服務(wù)。
在本節(jié)中,您在一個單獨(dú)的Java項目中生成一個Web服務(wù)客戶端,因為Web服務(wù)已經(jīng)部署并掛鉤到它上面了。在本教程中,這使得Web服務(wù)和Web服務(wù)客戶端創(chuàng)建之間的界限非常清楚地分開。
(1)單擊下拉箭頭,選擇Java項目。
(2)在項目名稱字段中輸入WebServiceClientProject,然后單擊完成。
(3)單擊下拉箭頭,然后選擇New Web Service Client。
(4)從項目的下拉菜單中選擇您的Web服務(wù)客戶端,選擇AX-RPC框架選項,并選擇WebSphere服務(wù)器作為目標(biāo)服務(wù)器。這提供了MyEclipse調(diào)用來創(chuàng)建JAX-RPC客戶端的Web服務(wù)代服務(wù)。然后單擊下一步。
(5)請務(wù)必選擇WSDL URL選項,并輸入//localhost:9080/WebServiceProject/services/Calculator?WSDL在WSDL URL字段中。
您可以使用命名空間來打包映射列表定制基于源WSDL文件中定義的命名空間中產(chǎn)生的包。如果不指定映射,生成工具會選擇一個合適的默認(rèn)映射。
(6)單擊下一步。MyEclipse加載Web服務(wù)驗證的WSDL,讓您知道WSDL可能存在的問題。
注意:如果使用驗證發(fā)生任何錯誤,請確保Web服務(wù)部署和應(yīng)用服務(wù)器托管正在運(yùn)行。如果您想生成客戶端的第三方Web服務(wù),并且在驗證過程中出錯,將其帶到了Web服務(wù)的作者請注意,如果可能的話,這樣就能夠糾正錯誤。
(7)單擊完成所有MyEclipse生成的客戶端都為您服務(wù)。
已經(jīng)生成客戶端后,一個新的包出現(xiàn)在您的src目錄中,同時還有一些新的類可以同Web服務(wù)一起工作。
隨著新資源的生成,您可以使用運(yùn)算器的ServiceLocator類訪問引用到Web服務(wù),然后執(zhí)行您的公開操作(加,減,乘,除)。
舉個例子說,您要計算以下4個運(yùn)算:
在這個示例中,添加從Web服務(wù)中使用操作來確保這些計算的代碼。首先,您需要在他的主函數(shù)中創(chuàng)建一個新的類。
(1)右鍵單擊com.myeclipseide.ws包,并選擇New> Class。
(2)將它命名為WebServiceClient,選擇Public static void main復(fù)選框,然后單擊完成。
當(dāng)您創(chuàng)建類之后,您需要將提供上述四個數(shù)學(xué)計算的主要實(shí)現(xiàn)方法同Web服務(wù)一起執(zhí)行這些計算,然后輸出到控制臺結(jié)果的代碼如下:
package com.myeclipseide.ws; import java.rmi.RemoteException; import javax.xml.rpc.ServiceException; public class WebServiceClient { public static void main(String[] args) throws ServiceException, RemoteException { /* Create a locator instance */ CalculatorServiceLocator locator = new CalculatorServiceLocator(); /* Get access to the service using the locator */ Calculator_SEI calculator = locator.getCalculator(); /* Using the web service, perform the 4 calculations */ System.out.println("1. 3+7=" + calculator.add(3, 7)); System.out.println("2. 12-2=" + calculator.subtract(12, 2)); System.out.println("3. 9*9=" + calculator.multiply(9, 9)); System.out.println("4. 40/2=" + calculator.divide(40, 2)); } }
注意:之所以定義的主要函數(shù)拋出ServiceException和RemoteException是為了避免在主要函數(shù)中實(shí)現(xiàn)try-catch塊。在寫一個真正的客戶端時,捕捉和處理異常的情況也是編寫好的代碼的重要組成部分。
(3)在上面顯示代碼的Java類文件中替換默認(rèn)代碼,然后點(diǎn)擊保存。
(4)通過右鍵單擊來運(yùn)行類,選擇Run As(或Debug As)>Java Application。
該客戶端運(yùn)行代碼后,使用它生成的定位器類訪問Web服務(wù),然后再控制臺中會出現(xiàn)下面的輸出:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)