1. 程式人生 > >webservice axis2(Axis2框架簡單實現)

webservice axis2(Axis2框架簡單實現)

    1. 部署Axis2的war包
  1. 將WAR distribution中的axis2.war包解壓並複製到Tomcat的webapps資料夾中。

 

(2)雙擊Tomcat/bin目錄下的startup.bat啟動Tomcat,自動解壓webapps下的war包。

 

 

(3)在瀏覽器位址列中輸入war包地址:

會在Tomcat下生成一個axis2的檔案,通過Tomcat再訪問:

點選Services,發現釋出了一個Version版本,並沒有釋出服務,這是我們後面要操作的。

  

接下來實現由Eclipse釋出服務到Tomcat。

  

    1. 在Eclipse中安裝Axis外掛

(1)下載axis2的兩個外掛,解壓後將裡面的 jar包複製到eclipse安裝地址的plugins外掛資料夾中。

(2)重啟Eclipse,ctrl + N在建立裡輸入axis,就有:

檢測是否存在上圖選項。

 

    1. 建立服務端java專案

(1)建立介面與方法

(2)建立介面實現類,重寫方法

(3)儲存。在bin目標下生成.class檔案。

 

    1. 釋出服務

(1)建立Axis

(2)輸入Class檔案路徑

勾選 SKIP WSDL

選擇自動生成XML檔案,下一步,再下一步。

(3)填寫服務的名字,實現類的地址,點選:Load

勾選 只要宣告的方法

填寫輸出的地址及輸出的檔名

最後在桌面生成一個.aar的檔案,這是Axis2的包。

 

    1. 將.aar包複製到Tomcat下的axis2/WEB-INF/services

 

    1. 重啟Tomcat,輸入地址測試,發現在Version下面有暴露的方法

點選:personService就會產生一個xml檔案

 

現在只在一啟動tomcat就會發布這個服務。

 

    1. 用Eclipse自帶的工具測試

 

    1. 編寫客戶端來獲取釋出的服務

(1)建立java客戶端,接下來建立axis,選擇第一個

(2)選擇通過java程式碼生成WSDL檔案

(3)填寫WSDL檔案路徑

下一步,選擇輸出的路徑(這裡放本客戶端原始碼地址,到專案名地址即可,它會自動放到src資料夾中)

(4)ok後檢視客戶端專案中會多出一個

報錯的原因是因為這是在java專案,缺少axis的依賴包,動手導下即可。

匯入axis2-1.7.3-bin/bin下面所有的jar包。

建立一個包,建個測試類測試下。

try {

    PersonServiceStub personServiceStub=new PersonServiceStub();

    Eat eat=new Eat();

    eat.setWho1("雨田君");

    eat.setWho2("婆婆輝");

    EatResponse response=personServiceStub.eat(eat); //這裡將eat看成一個物件了

    String str=response.get_return();

    System.out.println(str);

} catch (AxisFault e) {

    e.printStackTrace();

} catch (RemoteException e) {

    e.printStackTrace();

}

關鍵是WSDL那檔案