一、AXIS2简介
AXIS2是WebService/SOAP/WSDL的引擎,是Appache AXIS 1.x的衍生版。支持更强的模块化、更高的灵活性、更有效地体系结构,可以更容易地与其他Web Service 服务标准与协议(如 WS-Security、WS-ReliableMessaging 等)结合。具有以下特点:
- 采用AXIOM的XML处理模型,支持灵活定义对象模型。
- 支持不同的消息交换模式:In-Only、Robust-In和In-Out 。In-Only消息交换模式只有SOAP请求,而不需要应答;Robust-In消息交换模式发送SOAP请求,只有在出错的情况下才返回应答;In-Out消息交换模式总是存在SOAP请求和应答。
- 提供阻塞与非阻塞的API。
- 支持内置的服务寻址(WebService-Addressing)。
- 灵活的数据绑定与Web Service发布方式:支持POJO(Plain Old Java Object)、AXIOM、XMLBeans、JiBX、JAXB 2.0等。
- 全新的部署模型,支持热部署、热更新。
- 支持HTTP、SMTP、JMS、TCP传输协议。
- 支持REST(Representational State Transfer)。
二、AXIS2的下载与部署
1.首先,在客户机安装appache tomcat以及jdk基础环境。
2.在http://axis.apache.org/axis2/java/core/下载AXIS2的压缩包
目前,AXIS2的最新版本是1.6.3(2015.6.27)。本文下载1.6.2(2012.4.17)版本。
下载列表:
axis2-1.6.2-bin.zip AXIS2完整版,支持WS-Addressing与SOAP-Moniter
axis2-1.6.2-war.zip AXIS2 Web容器部署版本
3.解压axis2-1.6.2-war.zip文件,然后将axis2.war文件拷贝到<Tomcat安装目录>\webapps目录,启动Tomcat,在浏览器地址栏输入AXIS2的URL(http://localhost:8080/axis2/),axis2.war会自动解压缩,如果,AXIS2的主页面则表示加载成功。
三、编写与发布WebService
(1)POJO方式发布(无需任何设置 )
在AXIS2中无需任何设置,可以让简单的POJO发布成Web Service。其中POJO的public方法会发布成为Web Service方法。
public class AXISHelloService { public String sayHello(){ return "Hello AXIS"; } public String sayHelloToPerson(String name){ if(name==null){ name = "no body"; } return "AXIS Hello,"+name; } }
编译AXISHelloService类后,将AXISHelloService.class文件拷贝到<Tomcat安装目录>\webapps\axis2\WEB-INF\pojo目录中。现在AXISHelloService已经发布成服务。
在浏览器地址栏中输入如下的URL,查看服务列表:
http://localhost:8080/axis2/services/listServices
在浏览器中输入两个URL测试sayHello与sayHelloToPerson方法:
http://localhost:8080/axis2/services/AXISHelloService/sayHello
http://localhost:8080/axis2/services/AXISHelloService/sayHelloToPerson?name=bill
<ns:sayHelloToPersonResponse xmlns:ns="http://ws.apache.org/axis2"> <return>AXIS Hello,bill</return> </ns:sayHelloToPersonResponse>
在编写、发布与测试AXIS2.0服务时,注意以下方面:
- POJO不能使用package关键字声明包。
-
AXIS2默认,热发布Web Service。即只要将Web Service的.class文件复制到pojo目录时,tomcat无需重新启动,即可自动发布Web Service。Web Service热发布的配置项在<Tomcat安装目录>\webapps\axis2\WEB-INF\conf\axis2.xml文件中,找到如下配置项:
<parameter name="hotdeployment">true</parameter>
-
AXIS2默认,是非热更新,即一旦发布Web Service,再更新Web Service,必须重启Tomcat。如果想设置AXIS2是热更新,则修改axis2.xml的以下配置项:
<parameter name="hotupdate">false</parameter>
- 在浏览器中测试WebService时,如果WebService方法有参数,需要使用URL的请求参数来指定该WebService方法。
- 发布Web Service的默认路径的pojo,可以手动添加其他目录,打开axis2.xml,在<axisconfig name="AxisJava2.0">节点之间,添加如下配置项
<deployer extension=".class" directory="deployPOJO" class="org.apache.axis2.deployment.POJODeployer"/>
(2)使用services.xml配置文件发布
AXIS2引擎发布Web Service,虽然POJO类直接拷贝至axis2\WEB-INF\pojo目录直接发布成Web Service,无需任何配置,但这些类无法处于任何包内。因此,AXIS2提供支持处于包中的POJO类发布成Web Service的方式,即services.xml方式。
相关推荐
在描述中提到的"web service Axis2相关jar 里面包含了Axis2 java调用.net接口所需jar包",这意味着这些jar包是为了使Java应用程序能够与使用.NET框架的系统进行互操作而准备的。由于Java和.NET之间存在平台差异,...
- 利用MyEclipse的Axis2 Code Generator插件,基于已定义的WSDL文件自动生Web Service相关的Java代码。 - 这一步骤简化了开发流程,开发者无需手动编写复杂的SOAP消息处理逻辑,而是专注于业务逻辑的实现。 **3.2 ...
本篇文章将深入探讨如何利用Axis和wsdd(Web Services Deployment Descriptor)文件来部署Web服务。 首先,让我们了解什么是wsdd文件。wsdd是Axis用来配置和部署Web服务的XML配置文件,它包含了关于服务端点、消息...
本篇文章将深入探讨如何使用Axis1来创建并运行一个基本的"Hello, World!"示例,帮助初学者理解Web服务的工作原理。 首先,了解SOAP是理解Axis1工作原理的关键。SOAP是一种轻量级的协议,用于在Web上交换结构化的、...
**Axis开发Web Service学习笔记** 在信息技术领域,Web服务是一种基于开放标准的互联网通信协议,允许不同的应用程序之间进行互操作。而Axis是Apache软件基金会的一个开源项目,它提供了一个强大的工具集,用于创建...
4. **部署和发布服务**:如果我们要在Spring中发布一个Web服务,可以使用Axis2的`SpringServiceDeployer`。这需要将服务类和相关的配置文件打包成一个Axis2模块(.aar文件),然后部署到Axis2服务器上。 5. **测试...
根据给定的文件信息,以下是对“Web Service基础培训_入门篇”的详细解析与扩展: ### Web Service概览 Web Service是一种分布式计算技术,旨在通过轻量级且与厂商无关的通信协议,允许不同系统之间跨网络(如...
在Java世界中,开发Web服务(Web Service)是一种常见的接口通信方式,Axis2是Apache软件基金会提供的一个开源工具,专门用于构建和部署Web服务。它基于SOAP(简单对象访问协议)标准,支持WS-*规范,提供了高效且...
本篇文章将深入探讨AXIS2相关jar包在Java中调用Web Service时的重要性和使用细节。 标题中的“axis2相关jar包”指的是AXIS2框架所需的库文件,这些jar包包含了处理Web服务请求和响应所需的各种组件。AXIS2的核心...
【标题】Web Service(Axis) + Excel(Office 2003)的集成与应用 在信息技术领域,Web服务是一种基于互联网的软件交互方式,它允许不同系统之间共享数据和服务。Axis是Apache软件基金会开发的一个开源Java框架,...
本篇文章将详细解析如何使用Apache Axis来部署Web Services,这是一款广泛使用的开源工具,用于生成和消费Web Services。 首先,我们需要了解Web Services的基本概念。Web Services通过WSDL(Web Service ...
标题中的“axis2学习——开发自定义的axis2服务”表明了本文主要涉及Apache Axis2框架,这是一个用于构建Web服务和SOA(Service-Oriented Architecture)应用的开放源码平台。Axis2允许开发者创建、部署和管理服务,...
在IT行业中,开发Web服务是常见的任务之一,而Eclipse作为流行的Java集成开发环境,与Tomcat这样的轻量级应用服务器结合,可以便捷地创建和部署Web服务。本篇文章将详细讲解如何在Eclipse中配置Tomcat服务器来实现...
本篇文章将深入探讨Axis2的基础概念、工作原理以及如何进行入门实践。 **1. WebService基础知识** 在理解Axis2之前,我们需要了解什么是Web服务。Web服务是一种通过互联网交换数据的方式,它基于开放标准(如XML、...
本篇将详细阐述如何在Eclipse中进行Web Service的开发。 1. **准备工作** 开发Web Service首先需要准备相关工具和环境。Eclipse是Java开发的主要IDE,对于Web Service的支持主要依赖于插件,如Workshop Studio。...
这篇博客文章“webservice学习二之(1)axis2服务器端方式开发总结”可能涵盖了如何使用Axis2来创建和配置服务器端Web服务的详细步骤。 首先,了解Axis2的基础概念是至关重要的。Axis2是基于SOAP(Simple Object ...
一、Web服务基础 Web服务基于开放标准,如XML(可扩展标记语言)用于数据表示,SOAP(简单对象访问协议)用于消息传输,WSDL(Web服务描述语言)用于服务定义,以及UDDI(统一描述、发现和集成)用于服务注册和查找...