Apache Axis

来自开放百科 - 灰狐
2006年9月3日 (日) 23:41WikiSysop (讨论 | 贡献)的版本

跳转到: 导航, 搜索
Axis2.jpg

目录

Apache Axis 简介

Apache Axis 90.jpg 是Apache WebService项目中的子项目,其最初起源于IBM的"SOAP4J",应该属于最早的一批用于构造基于SOAP应用的Framework。

目前Apache Axis已经发展到了第三代,其核心是一个SOAP处理器,用于开发包括客户端,服务器端,SOAP Gateway等各种应用。事实上Apache Axis在了1.0版后,其发行版本还包括了完整的J2EE服务器插件, WSDL支持和生成,TCP/IP监视器等组件,从这个意义上来说Apahce Axis已不仅仅是个SOAP框架了,它包含了除了UDDI外对整个Web Service协议栈(Protocol Stack)的支持。

对大多数关心Macromedia产品的人来说,Macromedia是Axis小组的核心成员之一,他们在几乎所有J2EE服务器端的产品线中包含了Axis,也就是说Macromedia对WebService的支持是通过Apache Axis实现的,这其中包括了JRun, Flex, ColdFusion。即便是Flash Remoting,由于其核心还是SOAP,所以也是使用了Axis的SOAP框架。

和.NET的WS不同,Axis是一个非常易于扩展的体系结构,其设计的核心思想是建立一个数据处理的管道,通过把handler编织成一条处理链从而无限扩展其可能性。打个比方,在输入部分开发人员既可以编写基于HTTP Basic Authentication的用户验证模块也可以插入SOAP Auth模块用于验证请求,而输出部分既可以通过XML binding把结果输出为SOAP XML也可以象Flash Remoting那样把结果输出成binary格式。

同时Axis也提供了所有的处理模块,使得用户能在最快的时间把服务器组件发布成WS.总的来说Axis有以下几个特点:

  • 速度 - Axis 使用 SAX 而不是 DOM 来处理XML请求,所以速度上有很大的改善。
  • 灵活性 - 刚才也提到了,Axis的体系结构是一个全开放式的处理器,所以扩展模块极为方便。
  • 面向组件的发布方式 - 处理链上可重复使用组件来完成类似的操作。
  • Transport 框架 - Axis的核心和底层的transport完全分离,也就是说不管WS的Transport是HTTP, FTP, MAIL, MESSAGE QUEUE,只要插入对应的Transport模块即可,而不需改动其他部分。
  • WSDL1.1支持 - 可自动由Java Object生成WSDL

Apache SOAP与Axis的比较

Apache SOAP                   Axis
----                          ----
really old                    third generation
really slow                   much faster, but not as fast as many
no WSDL support               WSDL support
proprietary API               JAX-RPC API
RPC/encoded only              RPC/encoded and Doc/literal
interoperability issues       very interoperable
extensiblity issues           very extensible
low level API for headers     easy handler support for headers

相关链接

安装指南

获得 axis2 http://apache.justdn.org/ws/axis2/1_0/axis2.war

http://localhost:8080/axis2/
使用admin/axis2 登录,进入Axis2 Web Admin Module

获得 http://mirror.vmmatrix.net/apache/ws/axis/1_4/axis-bin-1_4.tar.gz

tar zxvf axis-bin-1_4.tar.gz
cd /axis-1_4/webapps
mv -R axis /usr/local/tomcat/webapps/
http://localhost:8080/axis/

精彩图集

Subsystems
Message Path on the Server
Message Path on the Client
分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱