`

Axis2 Web Service

阅读更多
有一个最简单的方法就是把axis2.war中的内容作为web app的基础, 来进行开发. 不过为了更清楚的了解如何在一个已有的web app中嵌入axis2, 那就只能手动了.

1. 把以下内容copy到已有的web app中

axis2.war/axis2-web
axis2.war/WEB-INF/*

2. 在web.xml中配置axis2 servlet

    <servlet>
        <display-name>Apache-Axis Servlet</display-name>
        <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>/services/*</url-pattern>
    </servlet-mapping>


3. 创建自己的Service Bean

package example;
public class HelloWorldService {
    public HelloWorldService() {
    }
    public String hello() {
        return "Hello axis2 service!";
    }
}


4. 配置Web Service.
由于axis2嵌入了web app, 所以web service就不用打包成aar,而是直接在/WEB-INF目录下创建相应的文件夹和services.xml

/WEB-INF
    /services
        /HelloWorld
            /META-INF
                services.xml


5. 配置services.xml的内容

<serviceGroup>
    <service name="HelloWorldService">
        <description>Hello World Service</description>
        <parameter name="ServiceClass" locked="false">example.HelloWorldService</parameter>
        <operation name="hello">
            <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>
    </service>
</serviceGroup>


6. 测试
如果一切OK的话, 在浏览器中输入http://localhost:8080/example/services/HelloWorldService?wsdl就应该可以看到输出的wsdl xml.

Done!

其实在项目中还集成了Spring, 不过这个应该相对简单.

1. 需要把Spring的jar放到/WEB-INF/lib中

2. services.xml中service的ServiceObjectSupplier用org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier

HelloWorldSpringService.java

package example;

public class HelloWorldSpringService {
    public String hello() {
        return "Hello spring axis2 service!";
    }
}

In services.xml:

<serviceGroup>
    <service name="HelloWorldService">
        <description>Hello World Service</description>
        <parameter name="ServiceClass" locked="false">example.HelloWorldService</parameter>
        <operation name="hello">
            <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>
    </service>
    <service name="HelloWorldSpringService">
        <description>Hello World Spring Service</description>
        <parameter name="ServiceObjectSupplier">
            org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
        </parameter>
        <parameter name="SpringBeanName">HelloWorldSpringService</parameter>
        <operation name="hello">
            <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>
    </service>
</serviceGroup>

In applicationContext.xml

<bean id="HelloWorldSpringService" class="example.HelloWorldSpringService"/>



参考:

How to Embed an Axis2 based Web Service in your Webapp? | WSO2 Oxygen Tank
wso2.org/library/90
Axis2 Integration with the Spring Framework
http://ws.apache.org/axis2/1_3/spring.html


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/bruni/archive/2008/03/17/2193060.aspx
分享到:
评论

相关推荐

    axis2 web service完整教学

    【Apache Axis2 Web Service 教程】 Apache Axis2 是一个流行的开源Web服务框架,用于创建、部署和管理高性能的Web服务。本教程将详细介绍如何在Eclipse环境中利用Apache Axis2搭建Web服务及其客户端。 **环境配置...

    Axis2 Web Service 开发教程

    【Axis2 Web Service 开发教程】是一份详细指导开发者如何使用Apache Axis2框架创建和部署Web服务的教学资料。Apache Axis2是Java世界中一个强大的Web服务引擎,它提供了高效的性能和灵活的架构,使得Web服务的开发...

    eclipse 生成 Axis2 Web Service 客户端

    ### Eclipse 生成 Axis2 Web Service 客户端 #### 一、概述 本文将详细介绍如何在Eclipse开发环境中创建基于Axis2的Web Service客户端。Axis2是Apache组织下的一个开源项目,它提供了一种用于构建服务端和服务...

    通向架构师的道路(第十三天)Axis2 Web Service安全初步.docx

    通向架构师的道路(第十三天)Axis2 Web Service安全初步 Axis2 Web Service安全是Web服务成功的必要保证。由于Web服务使用XML进行数据交换,而XML在默认情况下是明文编码的,同时,大部分Web服务使用HTTP协议作为...

    通向架构师的道路(第十一天)之Axis2 Web Service(二).docx

    在“通向架构师的道路(第十一天)之Axis2 Web Service(二)”的主题中,我们主要探讨了如何使用Axis2框架创建和部署Web服务,并且使用简单Java类型来定义服务接口。以下是关于这个主题的详细知识讲解: 1. **Axis2 ...

    通向架构师的道路(第十二天)之Axis2 Web Service(三).docx

    【标题】:“通向架构师的道路(第十二天)之Axis2 Web Service(三)” 【描述】:本文档是通往架构师学习路径的一部分,主要关注Axis2框架下的Web Service开发,尤其是关于SOAP特性的应用。 【标签】:Axis2 ...

    通向架构师的道路(第十四天)Axis2 Web Service安全之rampart.docx

    通向架构师的道路(第十四天)Axis2 Web Service安全之rampart 本篇文章主要讲述了Axis2 Web Service安全之rampart的知识点,包括加密保护Web Service传输、基本概念、对称加密、非对称加密、数字签名等内容。 一...

    Axis开发Web Service实例

    ### Axis开发Web Service实例详解 #### 一、概述 在探讨如何使用Apache Axis来开发Web Service之前,我们首先需要了解一些基本概念。 **Web Service**是一种标准的技术框架,用于实现不同平台之间的应用通信。它...

    通向架构师的道路(第十天)之Axis2 Web Service(一).docx

    Axis2 Web服务架构师之路 Axis2 是一个基于 JAVA 语言的最新的 SOAP 规范(SOAP 1.2)和 SOAP with Attachments 规范(来自 Apache Group)的开放源代码实现。Axis2 框架来自 Apache 开放源代码组织,具有灵活的...

    在MyEclipse环境下配置Axis2的详细步骤与web service简单程序应用

    ### 在MyEclipse环境下配置Axis2的详细步骤与web service简单程序应用 #### 一、配置Axis2在MyEclipse中的环境 对于初次接触MyEclipse结合Axis2进行Web Service开发的学习者而言,掌握正确的配置步骤是至关重要的...

    基于AXIS2实现Web Service开发

    基于AXIS2实现Web Service开发是一项常见的任务,尤其在企业级应用中,Web Service作为不同系统间通信的重要桥梁。AXIS2是Apache软件基金会提供的一个轻量级、高性能的Web Service框架,它提供了完整的Web Service...

    MyEclipse下开发Web Service(Axis2)

    在MyEclipse中,选择"File" -&gt; "New" -&gt; "Other",然后在弹出的窗口中找到并选择"MyEclipse" -&gt; "Web" -&gt; "Axis2 Web Service"。在向导中填写项目名称,选择项目的保存位置,然后点击"Finish"。 4. **编写业务逻辑...

    axis2 webservice for myeclipse插件Axis2_Service_Archiver_1.3.0

    标题中的“Axis2_Service_Archiver_1.3.0”指的是一个针对MyEclipse集成开发环境的Axis2 Web服务插件,版本为1.3.0。这个插件是Axis2框架的一部分,用于简化在MyEclipse中创建、部署和管理Axis2 Web服务的过程。 ...

    SOA 下的基于Axis2和Tuscany的web service

    在基于Axis2和Tuscany的Web Service实现过程中,首先需要理解Web Service的基本概念,包括WSDL(Web Services Description Language)用于描述服务接口,UDDI(Universal Description, Discovery, and Integration)...

    Apache Axis2 Web Services, 2nd

    Extensive and detailed coverage of the enterprise ... Written by Deepal Jayasinghe, a key architect and developer of the Apache Axis2 Web Service project; and Afkham Azeez, an elected ASF and PMC member.

    部署axis2c的文档

    ### 部署Axis2c Web Service:详细指南与步骤 #### Axis2c简介 Axis2c是一款由Apache Software Foundation开发的开源Web服务框架,它主要用于实现基于C语言的Web服务。Axis2c提供了丰富的功能,包括SOAP消息处理、...

    myeclipse10 axis2 插件

    3. **验证安装**:启动MyEclipse后,检查是否能在“新建”菜单中看到Axis2相关的项目模板,如 Axis2 Web Service。 4. **创建Web服务**:利用新安装的插件,可以快速创建基于Axis2的Web服务,包括编写服务接口、实现...

    用axis2开发web service

    【用Axis2开发Web Service】是本文的核心主题,轴心技术是Java开发Web服务的一种框架,相较于Axis1,其过程更为简洁。以下是关于使用Axis2开发Web Service的详细步骤和知识点: 1. **实验环境搭建**: - 首先确保...

    Axis2快速构建Web Service ppt

    - **Axis2简介**:Axis2不仅是一个Web Service引擎,也是一个完整的Web服务开发框架。它支持多种消息传递模式和协议,如HTTP、HTTPS、SMTP等。Axis2的模块化设计使得扩展和定制更加便捷。 - **Axis2安装与部署**:...

    基于Axis的Web Service客户端调用

    【标题】基于Axis的Web Service客户端调用 在IT领域,Web Service是一种通过网络进行通信的标准协议,它允许不同系统间的应用程序互相交换数据。而Apache Axis是Java平台上的一个开源工具,专门用于创建和部署Web ...

Global site tag (gtag.js) - Google Analytics