Java 中利用 axis2 進行webservice 客戶端編寫
1 安裝axis2客戶端
下載客戶端本文下載的是 1.6.2 下載地址是北京交通大學的apache鏡像
地址http://mirror.bjtu.edu.cn/apache/axis/axis2/java/core/1.6.2/axis2-1.6.2-bin.zip
下載完成後解壓下圖所示
2 java客戶端的編寫
Axis2提供腳本生成客戶端代碼,腳本文件在bin目錄下
執行腳本生成客戶端:
2.1 啓動cmd
2.2生成客戶端包代碼命令
WSDL2Java -uri wsdl文件全路徑 -p 包名 -d xmlbeans -s -o 生成的java代碼存放路徑
WSDL2Java命令參數說明:
-uri 指定*.wsdl文件,可以帶具體路徑;
-p 指定生成代碼的包名
-d xmlbeans 使用不同的數據綁定方法;
-o 指定生成代碼放置的路徑;
-ss 表示要生成服務端代碼;
-ssi 表示要生成代碼中,先生成接口類,再生成實現類;
常用命令格式
- wsdl2java -uri http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl -p com.jshand.axis2.client -s -o d:\axisclient
執行完成後
在指定目錄後即生成客戶端代碼
可以直接粘貼到項目中進行使用
3 客戶端代碼的使用
- //生成客戶端stub示例
- WeatherWSStub stub = new WeatherWSStub();
- //生成webservice一個方法的請求示例
- WeatherWSStub.GetRegionProvince regionProvince = new WeatherWSStub.GetRegionProvince();
- //調用stub的獲取方法屬性,返回一個****Response
- GetRegionProvinceResponse regionProvinceResponse = stub.getRegionProvince(regionProvince);
- //從****Response取得結果,此處根據需要進行調整
- ArrayOfString arrayOfString = regionProvinceResponse.getGetRegionProvinceResult();
- String[] strings = arrayOfString.getString();
參考: http://www.iteye.com/topic/1130721