前言:
今天给大家分享一下前段时间在做项目的时候做webservice接口的一些心得。
- 在web工程lib目录下导入 Axis2相关jar包
enter description here
- 在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>
- 编写接口和实现类
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); ???}
- 编写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>
先用浏览器访问wsdl地址 看是否发布成功
使用SOAPUI工具测试接口功能
PS:第一次分享自己的心得,写得不好的地方,还望大家批评指正
基于 Axis2的webService接口的基本开发步骤
原文地址:https://www.cnblogs.com/ft-greate/p/10188731.html