`
rayn115
  • 浏览: 70259 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Axis2部署WebService

    博客分类:
  • Java
阅读更多

Axis2下提供了三种配置文件,一种是整个系统的全局配置axis2.xml,第二个是服务配置services.xml,第三个是模块配置module.xml。

一、全局配置axis2.xml文件

配置全局信息需要编写axis2.xml文件,在axis2.xml文件中,顶级元素有六个,它们分别为:

Parameter

Transport Receiver

Transport Sender

Phase Order

Module References

Listeners(Observers)

1、 Parameter

Parameter参数是个name value pair,每一个在AxisConfiguration中都会被转换为properties。因此parameters级别配置的文档可以在运行时通过AxisConfiguration得到。正确的配置方法为

<parameter of the parameter”> parameter value </parameter>

2、 Transport Receiver

传输接收器,axis2接收消息可以采用不同的协议,需要对所采用的传输协议进行定义。定义格式:

<transportReceiver >

<parameter >

</transportReceiver>

以上设置传输协议为http ,端口是6060。也可以设置其他的传输协议。

3、 Transport Sender

运行时使用sender发送消息,例如axis2运行于tomcat下,axis使用TCP transport senders 来发送消息而不是HTTP,定义的transport sender的格式如:

<transportSender >

<parameter >

</transportSender>

4、 Phase Order

规范phases在执行链中的顺序,使用phase order元素来设置。

<phaseOrder type=”inflow”>

<phase >

</phaseOrder>

如果想在某个phase中添加一个handler,可以直接将handler元素添加到phaseOrder中。

Phaseorder的添加是在系统的预定义的phase 之后。

5、 Module References

如果在顶层元素添加 module的 ref ,则整个模块对全局有用。

<module ref=”addressing”/>

6、 Listeners(Observers)

在Axis2中,AxisConfiguration是可监测的,可以注册进观察者,在当一个AxisConfiguration发生改变时它们将会被自动通知。当前观察者的实现如下事件:

部署一个服务时

删除一个服务

激活一个服务或是将服务变成非激活

部署模块

删除模块

注册对于那业附加特性的服务注册观察者是很有用的,如RSS feed生成器将为用户提供服务信息。注册观察者格式:

<listener >

<parameter >

</listener>

其中的class代表 observer类的实现,并且需要说明的是类的实现要实现AxisObserver 接口,类要能在classpath中获得。

二、服务配置services.xml

services.xml文件放于META-INF目录下,它的简单结构如下表所示 :

 

<service of the service" scope="name of the scope" targetNamespace="target namespase for the service">

<description> The description of the service? </description>?

<transports>

transport>HTTP</transport>

</transports>

<schema schemaNamespace="schema namespace"/>

<messageReceivers>

<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"

class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>

</messageReceivers>

<parameter locked="xsd:false">org.apache.axis2.sample.echo.EchoImpl</parameter>

<operation mep="operation MEP">

<actionMapping>Mapping to action</actionMapping>

<module ref=" a module name "/>

<messageReceiver />

</operation>

</service>

其中涉及到的相关元素的说明:

name: 服务的名称,和aar文件名相同。

scope: 需要部署的服务的scope, scope可以是四种的一种:Application,SOAPSessioin,TransportSession,Request。

targetNamespace; 服务的目标名称空间,当产生wsdl文件时要用到这个元素。

description:可选的元素。只是进行描述。

transports: 可选元素。Transport服务将被暴露(exposed)。

parameter: 必须有的元素。规范工作的服务类和被MessageReceiver装载。

Operations:暴露的操作

<operation >

<module ref=” a module name”/>

<messageReceiver >

</operation>

此处必须有的属性是name,它代表了哪个操作名将暴露。操作也可以有module reference 和多个参数。

三、模块配置module.xml

module.xml文件也是存于归档文档的META-INF目录下,简单如下:

<module >

<inflow>

...

</inflow>

<outflow>

</outflow>

<Outfaultflow>

</Outfaultflow>

<INfaultflow>

</INfaultflow>

<operation mep=”MEP_URI_IN_OUT”>

<messageReceiver >

<parameter locked=”xsd:true”>10</parameter>

</operation>

在模块中有四种流flow:

Inflow;Outflow;INOutfaultflow;Outfaultflow

元素operations:如果一个模块在它被用到service中时想要向其中添加操作,则可以在module.xml文件中添加operation标记,这个operation的添加和services.xml文件中的方法一样。

Handler:handler元素包含有强制性的属性和可选的属性,定义handler的方法:

<handler >

<order phase=”userphase1”/>

</handler>

在handler中必须有的属性有:

name(handler的名称);

class(handler的实现类);

phase(handler所在的执行链中的阶段phase)

在handler中的可选属性:

phaseLast: 说明handler是这个phase的最后一个handler

phaseFirse: 说明handler是这个phase的头一个handler

before:handler应该在规定的handler之前调用

after: 在规定的handler之后调用

(转摘自: http://blog.163.com/qin_607/blog/static/116810982007515178648/)

分享到:
评论

相关推荐

    axis2发布webservice和调用axis2服务接口

    1. **创建WebService**:在Axis2中,可以通过编写一个简单的Java类并暴露其方法作为Web服务接口。这个类通常会遵循SOAP协议,定义服务操作。例如,你可以创建一个名为`HelloWorldService`的类,包含一个`sayHello`...

    Spring集成axis2实现webservice所用到的包

    这需要将服务类和相关的配置文件打包成一个Axis2模块(.aar文件),然后部署到Axis2服务器上。 5. **测试和调用**:一旦服务被部署,就可以通过Spring的`WebServiceTemplate`或`WebServiceProxyFactoryBean`来测试...

    axis2实现webservice

    ### Axis2实现WebService知识点 #### 一、Axis2简介 - **定义**:Apache Axis2是基于Java的一个开源的WebService框架,它支持多种标准(包括SOAP1.1、SOAP1.2、WS-Addressing等),并且具有轻量级、模块化的特点。...

    axis1.4 部署webservice说明

    Axis1.4是Apache软件基金会开发的一个开源Java框架,用于创建和部署Web服务。这个框架在Web服务领域中扮演着重要角色,特别是在早期的Web服务实现中。标题和描述提到的知识点主要集中在如何使用Axis1.4来部署Web服务...

    axis2+spring webservice

    3. **服务部署**:熟悉如何在Spring的ApplicationContext中定义服务类,以及如何将服务部署到Axis2运行时。 4. **会话管理**:理解HTTP会话在Web服务中的挑战,因为Web服务通常是无状态的。学习如何使用Axis2的会话...

    基于axis2实现的webservice简单实现(客户端+服务端)。

    【标题】中的“基于axis2实现的webservice简单实现(客户端+服务端)”表明了本文将探讨如何使用Apache Axis2框架来创建和消费Web服务。Apache Axis2是Apache软件基金会开发的一个Web服务引擎,它提供了高效且灵活的...

    Java-tomcat-axis2开发webservice返回json数据

    标题“Java-tomcat-axis2开发webservice返回json数据”涉及的是使用Java、Tomcat服务器以及Axis2框架来创建Web服务,并返回JSON格式的数据。这是一个常见的技术组合,用于构建RESTful API或者提供服务化接口。下面...

    利用Axis2实现WebService开发与部署

    【标题】:“利用Axis2实现WebService开发与部署” 【描述】:“利用Axis2实现WebService开发与部署-3中方法进行开发” 【标签】:“WebService” 本文将详细讲解如何使用Apache Axis2框架来开发和部署Web ...

    Axis2搭建WebService服务端demo

    在本文中,我们将深入探讨如何使用Spring、Axis2和Maven构建一个基于Java的Web服务(WebService)服务端示例。这些技术的结合为开发人员提供了高效、灵活且可扩展的解决方案来创建和消费Web服务。 首先,让我们了解...

    axis2webservice接口例子

    标题中的“axis2webservice接口例子”指的是使用Apache Axis2框架创建的一个Web服务接口实例。Apache Axis2是Java平台上的一款强大的Web服务开发工具,它提供了高效、灵活且可扩展的环境来构建和部署Web服务。这个...

    部署WebService(eclipse-axis2)

    ### 部署WebService(eclipse-axis2)的关键步骤与实践 #### 一、概述 部署WebService涉及使用Eclipse集成开发环境结合Axis2框架来搭建Web服务。本文将详细介绍如何使用Eclipse 3.5.0 和 Axis2-1.3 版本进行...

    基于axis2的webservice

    创建一个简单的"HelloWorld"服务,定义一个接口,实现该接口的类,然后通过Axis2工具生成aar文件并部署到Axis2服务器。客户端通过SOAP请求调用服务,获取返回的"Hello, World!"信息。 总结,基于Axis2的Web服务...

    axis2开发webservice

    标题 "Axis2 开发 WebService" 指的是使用 Apache Axis2 框架在 Eclipse 集成开发环境中创建和部署 WebService 的过程。Apache Axis2 是一个强大的 WebService 引擎,它提供了高性能、灵活且可扩展的架构,支持多种...

    axis2调用webservice接口jar包

    Axis2提供了强大的功能,包括动态编译、消息传递模型、模块化架构以及对多种传输协议的支持,使得开发和部署Web服务变得更加便捷。 **二、Axis2调用WebService接口步骤** 1. **添加依赖**:首先,我们需要在项目中...

    axis2_WebService_开发指南

    Axis2是Apache软件基金会的一个用于构建和部署WebService的引擎,它基于Apache Axis项目,并且是Apache Web服务堆栈的最新版本。Axis2支持SOAP和REST风格的WebService,并且能够以最小的资源消耗和高性能来处理SOAP...

    经典入门:Axis2创建webservice.pdf

    - 二进制包 (`axis2-1.4.1-bin.zip`) 包含了 Axis2 运行时环境,而 WAR 文件 (`axis2-1.4.1-war.zip`) 可以用于在应用服务器(如 Tomcat)上部署 Axis2。 2. **部署 Axis2 在 Tomcat** - 将下载的 WAR 文件放到 ...

    Axis2 Eclipse WebService插件

    Axis2是Apache软件基金会开发的一款高性能、灵活且可扩展的Web服务引擎,它为开发者提供了一个强大而全面的平台来创建和部署Web服务。在Eclipse集成开发环境中, Axis2 WebService插件扮演着至关重要的角色,使得...

    用axis2搭建webservice

    通过 Axis2,开发者可以快速地创建和部署Web服务,同时利用Spring的强大功能进行依赖注入和事务管理。 首先,让我们深入了解Axis2。Axis2是Axis1的升级版,它优化了性能,增加了模块化结构,使得扩展和定制更加灵活...

Global site tag (gtag.js) - Google Analytics