Axis2搭建WebService服务
生活随笔
收集整理的這篇文章主要介紹了
Axis2搭建WebService服务
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用Axis2搭建WebService服務
文章目錄
- 一、服務端部署
- 1.1 在web.xml配置文件中添加映射路徑:
- 2. 創建目錄及文件
- 3. 新建服務接口
- 4. 新建接口實現類
- 5. 發布服務
- 6. 瀏覽器測試
- 二、客戶端部署
- 2.1 Axis2客戶端通用工具類封裝(企業版本)
- 2.2 單元測試(命名空間默認):
- 2.3 單元測試:命名空間根據需求,名稱為gblfy
- 三、jar包依賴獲取
- 3.1 登錄axis2官網下載即可
- 3.2 war包部署tomcat
- 本文源碼下載:
一、服務端部署
1.1 在web.xml配置文件中添加映射路徑:
<servlet> <servlet-name>AxisServlet</servlet-name> <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping>2. 創建目錄及文件
- 在WEB-INF下面新建services文件夾,在services文件夾下面新建conf文件夾,在conf文件夾下面新建META-INF文件夾,在META-INF文件夾下面新建services.xml文件:
文件內容如下:
3. 新建服務接口
4. 新建接口實現類
package com.gblfy.axis2.service.impl;import com.gblfy.axis2.service.IWebService;public class WebServiceImpl implements IWebService{public String hello(String name) {return "你好:" + name;}@Overridepublic String forward(String strXml) {return "測試TestService:" + strXml;} }5. 發布服務
6. 瀏覽器測試
http://localhost:8081/spring-axis2/services/ExposureServiceName?wsdl
效果圖:
手動設置命名空間截圖(沒有需求,保持默認即可,如果有這樣的需求,按照我照樣是設置即可):
注:為了滿足需求,命名空間,我手動設置過
二、客戶端部署
2.1 Axis2客戶端通用工具類封裝(企業版本)
/*** * @param url 服務調用地址* @param nameSpace 命名空間* @param method 方法名* @param tReqXml 請求報文* @return response 響應報文*/public String webserviceAxis2Client(String url, String nameSpace, String method, String tReqXml) {Object[] response = null;try {// 本機tomcat端口默認為8081,參數是wsdl網址的一部分EndpointReference targetEPR = new EndpointReference(url);RPCServiceClient sender = new RPCServiceClient();Options options = sender.getOptions();options.setTimeOutInMilliSeconds(2 * 20000L);// 超時時間20soptions.setTo(targetEPR);QName qname = new QName(nameSpace, method);Object[] param = new Object[] { tReqXml };Class<?>[] types = new Class[] { String.class }; // 這是針對返值類型的response = sender.invokeBlocking(qname, param, types);System.out.println(response[0]);} catch (AxisFault e) {e.printStackTrace();}return (String) response[0];}2.2 單元測試(命名空間默認):
命名空間默認:
2.3 單元測試:命名空間根據需求,名稱為gblfy
第一種:
第二種:
public static void main(String[] args) {String url = "http://localhost:8081/spring-axis2/services/ExposureServiceName?wsdl";String nameSpace = "gblfy"; // String method = "forward";String method = "hello";String tReqXml = "Axis2客戶端調用成功";WebserviceClientUtils a = new WebserviceClientUtils();a.webserviceAxis2Client(url, nameSpace, method, tReqXml);}任選其一即可
控制臺輸出:
三、jar包依賴獲取
3.1 登錄axis2官網下載即可
http://axis.apache.org/axis2/java/core/download.cgi
3.2 war包部署tomcat
- 將war包放到tomcat的webapp目錄下面,啟動tomcat就可以看到Axis2的首頁。
項目所用到的jar從第1個壓縮包中取,簡單直接從lib文件夾里面的jar全部復制到項目中即可
本文源碼下載:
| 提取碼 | hjlx |
總結
以上是生活随笔為你收集整理的Axis2搭建WebService服务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软件设计师 - UML图
- 下一篇: 计算机硬件基础-存取方式