<b>近日朋友問起Java開發WebService的問題,于是為其寫了一份簡單說明,貼于部落格,與各位朋友分享。</b>
<b>一、 </b><b>開發環境</b><b></b>
從Java6開始,JDK中已經支援用Java開發WebService應用了,不必選用第三方包。是以建議授課軟體環境如下:
軟體及其版本
必需
安裝順序
JDK1.6u18
1
Eclipse3.5 JavaEE版
2
如果軟體下載下傳和安裝有問題,可另行溝通。
<b>二、 </b><b>樣例說明</b><b></b>
下面是一個Java6開發Web Service的入門例子,項目結構如下:
完整例子共分為三部分
l 伺服器端在包jerry.ws中(手工編寫)
l 用戶端在包jerry.wsclient中(自動生成)
l 啟動用戶端入口在jerry.RunDemo類中(手工編寫)。
<b>一、 </b><b>樣例使用步驟</b><b></b>
1. 建立Java項目
2. 将伺服器端代碼加入到項目中
Java6WS代碼如下:
package jerry.ws;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;
@WebService
public class Java6WS {
public String doSomething() {
return "這是基于Java6的WebService";
}
public static void main(String[] args) {
String url="http://localhost:8080/AxisWS/jerry.ws.Java6WS";
Endpoint.publish(url,new Java6WS());
}
3. 運作服務
1) 啟動jerry.ws.Java6WS類
啟動後控制台資訊如下:
注意:維持現狀,不要關閉運作。
2) 檢視WSDL
該步驟是向學生解釋WSDL中XML資訊。
打開浏覽器,在位址欄裡輸入
<a href="http://localhost:8080/AxisWS/jerry.ws.Java6WS?wsdl">http://localhost:8080/AxisWS/jerry.ws.Java6WS?wsdl</a>
運作結果如下:
4. 調用服務
Java6提供生成WebService用戶端代碼工具。
注意,在生成前需要先啟動服務端。如果已經在啟動,就不需要重新啟動。
1) 進入src目錄
這裡的src是指你目前項目的src目錄。
2) 運作生成用戶端指令wsimport
3) 重新整理Eclipse項目
為了将生成的代碼引入項目,需要重新整理一下項目。
用戶端代碼生成後一般不宜自行改動。一般做法是,如果服務發生了變化,可以用此方法重新生成一下。
4) 調用用戶端
用戶端實際上可以看做是WebService的代理類。是以使用WebService,從代碼上就是使用用戶端代理類。
jerry.RunDemo類代碼如下:
package jerry;
import jerry.wsclient.Java6WS;
import jerry.wsclient.Java6WSService;
public class RunDemo {
/**
* @param args
*/
Java6WS java6WS = new Java6WSService().getJava6WSPort();
String returnContent = java6WS.doSomething();
System.out.println(returnContent);
5) 啟動測試
啟動jerry.RunDemo類,注意,仍然要保持服務是啟動狀态。
6) OK,大功告成。
本文轉自 王傑瑞 51CTO部落格,原文連結:http://blog.51cto.com/wangjierui/269703,如需轉載請自行聯系原作者