隨筆-204  評論-149  文章-0  trackbacks-0

          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 閱讀(891) 評論(1)  編輯  收藏 所屬分類: JAVA WS

          評論:
          # re: 在Eclipse中創建基于Axis2的web services 2009-05-03 20:29 | Frank_Fang
          主站蜘蛛池模板: 静乐县| 绵竹市| 钦州市| 方山县| 盐城市| 始兴县| 池州市| 琼海市| 迁西县| 巩留县| 昌吉市| 永济市| 灌南县| 南开区| 梅河口市| 苏尼特左旗| 长寿区| 恩施市| 涞源县| 普洱| 阆中市| 赤峰市| 华池县| 林州市| 竹北市| 井冈山市| 阿尔山市| 定安县| 吴忠市| 崇礼县| 冷水江市| 怀远县| 卫辉市| 平顶山市| 乐清市| 望江县| 永定县| 盘山县| 嵊泗县| 马边| 华亭县|