spring集成axis2以接口方式发布webservice

上一篇是通过spring bean的方式发布webservice,发布的webservice有些弊端,因为将所有的public方法都发布了,一些setter、getter方法也发布出去,这不是我们想要的。

因此我们定义一个接口,将想要发布的方法在接口中声明。

这里我们增加一个IFileWebService接口类,只声明了add、del、down三个方法

package com.alpha.service;

public interface IFileWebService {

	public abstract String add();

	public abstract String del();

	public abstract String down();

}

接下来我们只需要修改services.xml文件即可,只是配置了接口类的parameter ,增加的内容

<!-- 接口类 -->

<parameter name="ServiceClass">

com.alpha.service.IFileWebService

</parameter>

<?xml version="1.0" encoding="UTF-8"?>
<serviceGroup>
    <service name="fileWebService" targetNamespace="http://service.crystal.com/" scope="application">
        <description>spring集成axis2案例</description>
        <!-- 通过ServiceObjectSupplier参数指定SpringServletContextObjectSupplier类来获得Spring的ApplicationContext对象 -->
        <parameter name="ServiceObjectSupplier">
            org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
        </parameter>
        <!-- 
	       SpringBeanName固定的不能改
	       fileWebService是spring中bean的id
	     -->
        <parameter name="SpringBeanName">
            fileWebService
        </parameter>
        
        <!-- 接口类 -->
        <parameter name="ServiceClass">
        	com.alpha.service.IFileWebService
        </parameter>
        
        <!-- 
		    <messageReceivers>:用于设置处理WebService方法的处理器
		    in-out有返回值
		    in-only没有返回值
	    -->
        <messageReceivers>
            <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
                class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
            <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
                class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
        </messageReceivers>
    </service>
</serviceGroup>

再次访问http://localhost:8080/WebServiceTest/services/fileWebService?wsdl便可看到只有接口中声明的方法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值