日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Axis2搭建WebService服务

發布時間:2024/9/27 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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文件:

    文件內容如下:
<?xml version="1.0" encoding="UTF-8"?> <!-- 1. name : 指定接口服務名,隨便定義 2. targetNamespace::命名空間 自定義(默認包路徑反著)3. description :服務的作用說明,可寫可不寫 --> <service name="ExposureServiceName" targetNamespace="gblfy"><description>測試spring-axis2</description><!-- 1. 自定義 name 2. 指定要發布的類路徑 --><parameter name="ServiceClass">com.gblfy.axis2.service.impl.WebServiceImpl</parameter><!-- 1. name : 類里面的方法名 2. 指定要發布的類路徑 3. 有其他方法就在寫個operation標簽--><operation name="forward"><messageReceiverclass="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /></operation><operation name="hello"><messageReceiverclass="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /></operation><schema schemaNamespace="gblfy"/> </service>

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 = "http://impl.service.axis2.gblfy.com"; // String method = "forward";String method = "hello";String tReqXml = "Axis2客戶端調用成功";WebserviceClientUtils a = new WebserviceClientUtils();a.webserviceAxis2Client(url, nameSpace, method, tReqXml);}

第二種:

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全部復制到項目中即可

本文源碼下載:

鏈接https://pan.baidu.com/s/1Ww6qrAopbIiQReIeojd4tg
提取碼hjlx

總結

以上是生活随笔為你收集整理的Axis2搭建WebService服务的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。