創建客戶端程序
我們可以使用很多方法,任何SOAP工具來創建客戶端程序,例如.Net或Apache Axis。我的這個例子中我是用一個名叫WsClient.java的Servlet中的動態代理。為了減少編碼的代價,我將所有屏幕構建元素都放到doGet()方法中。對Web服務服務的實際調用在callWebService()方法中。代碼很簡單:
















































這段代碼做了些什么?讓我解釋一下:首先我們創建了一個服務模型,里面包含了對服務的描述,換句話說,我們創建了服務的元數據。我們是用XFire的ObjectServiceFactory通過接口IBankingService.class創建了這個服務模型。
下一步就是獲取XFire的代理對象。這一步中沒有任何應用細節。通過proxyFactory,使用服務模型和服務終點URL(用于獲得WSDL),我們獲得了服務的本地代理。
這個代理就是實際的客戶端。現在我們可以調用transferFunds()方法獲得我們想要的Web服務了。
一旦這個例子部署成功并啟動,就可以用下面的Servlet URL檢驗:
http://localhost:8080/websvc/ws
Servlet使用默認的參數訪問Web服務并顯示接收到的響應。你應該能看到下面兩行信息
Response Received
COMPLETED: CDN$ 500.00 was successfully transferred from A/C# 11111-01234 to A/C# 99999-05678
現在你可以確信Web服務真的起來了并且工作正常。
你可以嘗試傳入不同的數據。你可以輸入類似于下面的URL
http://localhost:8080/websvc/ws?from=11-2345&to=77-9876&amt=250.00&cur=EUR.
Web服務開發的基本步驟
下面列出了使用XFire開發Web服務的基本步驟:
1、檢驗Java類的方法和構造函數時公共的;
2、將XFire Servlet相關的入口添加到web.xml中;
3、創建services.xml并把它放到WEB-INF/classes/META-INF/xfire目錄下;
4、將Xfire和其他第三方庫添加到你的Web應用的WEB-INF/lib 目錄下。
OK,這就是全部要做,就是這么簡單。