JavaBean--->發布ws服務--->從axis2瀏覽器中獲得wsdl--->根據wsdl來生成客戶端樁Stub
---->根據Stub來寫測試用例
轉載:http://chineseoa.javaeye.com/blog/192018
本實驗的目的是讓你盡可能快的創建使用 Axis2 的服務和客戶端,我們將使用一個簡單的 SayHello 服務并顯示給你一些創建和部署它的不同方式,以及了解 Axis2 自帶的一些工具,然后我們將看看創建訪問這些服務的客戶端。
一 . 做好準備
在我們使用 Axis2 構建任何東西之前,我們將需要關注一些家務事。現在你將需要準備好你使用 Axis2 的環境,幸運的是,它只包括一些簡單的步驟 :
1. 軟件下載準備
2. 安裝
1) 首先搭建開發環境,需要將下載到的 Eclipse 解壓縮到一個目錄 , 然后安裝好 MyEclipse
2) 將下載到的 Axis2 的兩個插件解壓縮到 Eclipse 安裝目錄下的 plug-in 子目錄。
3) 然后啟動 Eclipse ,并選擇“ File->New->Other ”可以找到下面的這些 Wizards, 這些將是本文中用到的很重要的工具。
4) 下面開始搭建 Web Services 的部署環境。將下載的 tomcat 報解壓縮到一個目錄。完成 web container 的安裝。
5) 將 axis2.war 包拷貝到 tomcat 安裝目錄下的 webapps 目錄中。
6) 啟動 Tomcat(windows 下為 TOMCA_HOME/bin 中的 startup.bat ; Linux , unix 環境為 startup.sh 文件 ) ,打開瀏覽器輸入并訪問 :http://ip:8080/axis2 (或 2 http://localhost:8080/axis 2 )來查看 , 如果能看到下面的頁面則說明已經安裝完成。
二、進入開發
在開發環境及 Axis2 環境搭建好后,我們便可著手 Web Services 服務以及客戶端的開發:
1. 建立要發布的 Web Services
1) 在 Eclispse 中添加一個用戶庫命名為 axis2 ,將 axis2\lib 下的包均添加進來。
在 “Package Explorer” 窗口空白中單擊右鍵,從右鍵快捷菜單中選擇“ Properties” 菜單,然后在彈出的窗口中如下圖示操作,最后在圖中 6 所示位置處填入 axis2 中 lib 位置的路徑即可;
這一步操作的目的是為了以后工程添加 axis2 所需的 jar 文件方便;
2) 建立一個 JavaProject 命名為 ws ,將 axis2 用戶庫加入到 build path 中。
3) 現在開始編寫要發布的 WebSevice ,在 src 中建包 briup ,建立 Hello 類如下
package briup;
public class Hello {
public String sayHello(String user) {
return "Hello, " + user;
}
}
2. 發布 Web Services
打包要發布的 Service , Eclipse 中 New --> File --> Other --> Axis2 wizards --> Axis2 Services Archiver ,按照向導選擇剛建立的類編譯后的 class 文件。
1) 選擇 class 文件目錄,注意,不是 java 源文件,而是 classes 目錄。
2) 連按兩次 “Next>” ,選中 “Generate the service xml automatically” ;
3) 按下一步,輸入 service 名稱和類名; 注意類名要有包名
4) 按下一步,輸入 service 文件的保存路徑和文件名,完成。
這里將保存路徑設為 C 盤,文件名為 ws ,按完成保存成功。這時侯切換到保存路徑會發現新增一文件為 ws.aar ,將其拷貝到 Tomcat 5.5\webapps\axis2\WEB-INF\services 目錄下,重新打開 http://localhost:8080/axis2/services/listService 就會發現 AccountService 已經發布成功,現在就可以應用這個 Web 服務了。
3. 測試
通過 WSDL 文件生成 CallbackHandler.java 和 AccountServiceStub.java :
1) New --> File --> Other --> Axis2 wizards --> Axis2 Code Generator
2) 選擇 Generate Java source code from a WSDL file ,按下一步
3) 按 Browse 選擇或輸入 wsdl 文件位置,按下一步
到現在為止,我們并未自行編寫以及生成 WSDL 文件。當 web service 發布后即可通過訪問 http://localhost:8080/axis2/services/ws?wsdl 就可以得到 wsdl 文件。既然如此,我們可以在地址欄中直接輸入 URL :
4) 使用默認的配置,按下一步。在彈出的新窗口中,然后選擇生成文件的存放路徑,完成兩個 Java 文件的生成。
5) 在工程目錄按 F5 刷新,就可以看到剛生成的文件。如圖:
6) 編寫服務測試程序 WsTest.java 如下:
package briup;
public class WsTest {
public static void main(String[] args) throws Exception {
WsStub stub= new WsStub( "http://localhost:8080/axis2/services/ws" );
WsStub.SayHello sayHello= new WsStub.SayHello();
sayHello.setUser( "briup" );
WsStub.SayHelloResponse res=stub.sayHello(sayHello);
System. out .println(res.get_return());
}
}
運行結果如下:
在執行的時侯,切記要將殺毒軟件或防火墻軟件關閉。否則執行時出現以下報錯信息:
posted on 2009-04-28 22:53
Frank_Fang 閱讀(886)
評論(1) 編輯 收藏 所屬分類:
JAVA WS