1. 程式人生 > >基於 Axis2的webService介面的基本開發步驟

基於 Axis2的webService介面的基本開發步驟

 

Axis2 webService javaWeb

前言:
今天給大家分享一下前段時間在做專案的時候做webservice介面的一些心得

  1. 在web工程lib目錄下匯入 Axis2相關jar包

 

enter description here
enter description here

 

  1. 在web.xml中配置 AxisServlet ,這個就是外部系統訪問本系統的webservice介面時的主要入口,或者說是控制器
<!--Axis2  -->
<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>/servlet/AxisServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>*.jws</url-pattern> </servlet-mapping
>
<servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>/services/*</url-pattern> </servlet-mapping>
  1. 編寫介面和實現類
package ws.axis2.service;
 
import java.util.List;
import java.util.Map;
 
/**
 * @Description: IDC 日誌介面
 * @author fangtao
 * @date 2018-12-10 下午5:22:45
 */
public interface LoggerService {
     
    public String getOrderDetailLog(String docUnid,String sysId,String sysPwd);    
}
  1. 編寫server.xml註冊服務來發布(這個配置檔案其實可以通過逆向工程自動生成),並放到META-INF目錄下
<!-- This file was auto-generated from WSDL -->
<!-- by the Apache Axis2 version: #axisVersion# #today# -->
<serviceGroup>
      <service name="OrderLogSrv">
           <description>日誌服務介面</description>
           <parameter locked="false" name="ServiceClass">ws.axis2.impl.LoggerServiceImpl</parameter>
           <parameter locked="false" name="useOriginalwsdl">false</parameter>
           <parameter locked="false" name="modifyUserWSDLPortAddress">true</parameter>
           
           <operation name="getOrderDetailLog">
                 <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
           </operation>     
      </service>
      
</serviceGroup>
  1. 先用瀏覽器訪問wsdl地址 看是否釋出成功
    enter description here

  2. 使用SOAPUI工具測試介面功能
    enter description here

PS:第一次分享自己的心得,寫得不好的地方,還望大家批評指正