• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
不敌你丶回眸一笑
博客园    首页    新随笔    联系   管理    订阅  订阅

axis2框架实现webservice

这里我要记录的是不生成.arr或者.jar文件,结合真实项目实现的webservice;

其中项目作为服务的提供方,创建一个web项目,做单元测试。

一、服务端的创建

  1、导入axis2相应的jar包

  2、创建services.xml文件

     

<serviceGroup>
    <service name="ModlCustService">
        
        <!-- 通过ServiceObjectSupplier参数指SpringServletContextObjectSupplie类来获得Spring的ApplicationContext对象 -->
        <parameter name="ServiceObjectSupplier">
 org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier</parameter>
        
        <!-- SpringBeanName固定的不能改     modlCustServiceTarget是spring中注册的实现类的id-->
        <parameter name="SpringBeanName">modlCustServiceTarget</parameter>
    </service>
    
    <!-- 
        配置消息接收器,Axis2会自动选择
        方法有返回值,因此,需要使用可处理输入输出的RPCMessageReceiver类,
        而方法没有返回值,因此,需要使用只能处理输入的RPCInOnlyMessageReceiver类。
     -->
    <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>  
</serviceGroup>

 

  3、在web.xml中进行配置

      

  4、在applicationContext.xml文件中进行配置

 

二、客户端的创建

   1、这里我使用的是wsdl2java.bat生成的代码,配置环境变量(使用黑窗口在任何位置都能找到axis2下ben目录中的这个程序):

    新增  AXIS2_HOME    F:\java\axis2-1.7.5\

    在Path中添加      %AXIS2_HOME%\bin;

三、心路历程

  因为之前没有接触过axis2框架,所以在开发的过程中,都是边在网上找资料,边做demo。进入过很多误区。时间还耽误了不少。比如:

  

  在客户端做单元测试的时候,发现客户端报错,当时一直不知道哪里出了问题

  org.apache.axis2.axisfault: exception occurred while trying to invoke service method createvm

  后来才发现是没有和spring整合,导致服务端报空指针问题(dao没有注入)。

 

posted @ 2017-05-23 17:29  刚刚好丶  阅读(2136)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3