axis全称Apache Extensible Interaction System 即阿帕奇可扩展交互系统。Axis本质上就是一个SOAP引擎,提供创建
服务器端、客户端和
网关SOAP操作的基本框架。Axis版本是为Java编写的,不过为
C++的版本正在开发中。但Axis并不完全是一个
SOAP引擎,它还是一个独立的SOAP服务器和一个嵌入
Servlet引擎(例如
Tomcat)的服务器。
简介
支持WSDL。
1提供转化WSDL为Java类的工具。
2提供例子程序。
Axis是第三代Apache SOAP,从2000年起,SOAP v2开发小组开始讨论如何让Axis更加灵活、可配置,以及能够处理SOAP和来自W3C的各种XML标准。通过不断地讨论和代码编写,Axis取得了如下成果:
速度提高。 Axis通过基于事件的SAX对XML文档进行处理,从而在速度和效率上比Apache SOAP有所提高。
灵活性提高。
稳定性提高。
提供一个简洁的传输抽象框架。其核心引擎完全与传输方式独立。从而使基于何种协议传输的选择更加灵活。
支持WSDL。包括导出WSDL和客户代理生成等。
在发行1.1版本中有什么东西?
SOAP1.1/1.2引擎。
灵活的配置和部署系统。
支持及时自动生成SOAP服务(JWS)。
支持所有的基本数据类型,为自定义序列化操作提供类型映射系统。
JavaBean的序列化操作,包括将
自定义属性类型映射到XML的属性和元素。
为部署好的服务自动生成WSDL。
WSDL2Java工具可以从WSDL描述文件中产生相应的客户和
服务器端SOAP操作框架。
初步提供安全扩展,能够与Servlet2.2安全集成。
通过HTTP Cookie和与传输无关的SOAP头信息提供会话跟踪。
初步支持带附件的SOAP消息。
在EJB方面提供把EJB作为
Web服务的访问途经。
基于Servlet的HTTP传输。
基于JMS的传输。
独立的服务器(但需要HTTP 服务器和Servlet容器支持)。
组件包
axis.jar
jaxrpc.jar
saaj.jar
commons-logging.jar
commons-discovery.jar
wsdl4j.jar
AXIS2
AXIS新的架构是在2004年8月的首脑会议在斯里兰卡首都科伦坡。新结构的axis2是建筑在axis1.x基础上的。比较axis1,Axis2以更加灵活,高效和更好的配置。一些好的观念亦从axis1.X被储存在新的结构中。阿帕奇axis2不仅支援SOAP1.1和SOAP1.2,而且它也对于REST风格的
Web服务也有综合性的支援,相同的业务逻辑实作可以同步利用WS*式的接口以及REST接口。
-WS可靠讯息服务由Apachesandesha2支援-WS-CoordinationandWS-AtomicTransaction由ApacheKandula2支援-WS-Security由ApacheRampart支援-WS-Addressing已包括作axis2在为核心模组
Axis2有许多新的特点,以加强对行业规范的实施,主要点如下:
速度:Axis2使用自己的对象模型和stax(串流API的XML)的来解析,比较早版本的ApacheAXIS2以达到更明显的速度。
低内存:Axis2设计保持了低内存。
AXIOM:Axis2讯息处理有自己的轻量对象模型AXIOM,,具有可扩展性,高性能及开发方便的优点。
热部署:Axis2能够在已建立和运转时有能力部署Web服务。换言之,新的服务可以添加到系统无需关闭服务器,干脆把所需的WebService的档案放入服务目录,版本和部署模型将自动部署服务以供使用。
异步Web服务:Axis2现在支援异步Web服务和异步Web服务调用并使用非阻塞的客户端。
MEP支援:Axis2现在是简便与灵活的支援消息交换模式(MEP),内置支援WSDL的2.0定义的基本MEP。
灵活性-Axis2构筑给开发人的发展完全自由地插入延伸到引擎定制头处理,系统管理,以及任何你可以想像的东西。
稳定:Axis2界定一套出版接口其变化对比AXIS可说改变相对比较慢。
面向组件的部署-你可以很容易界定重用网络处理器,实施的共同模式处理您的请求,或发给你的伙伴。
WSDL的支援:axis2支援WebService描述语言(版本1.1和2.0),让您轻松地建立STUB来连结远端服务,并自动向其他机器说明你的服务部署。
新增:WebServices的多个技术已被纳入,包括WSS4J的保安技术(ApacheRampart),Sandesha的可靠讯息服务,Kandula一个WEB服务的协调集成,WEB服务自动传送。
组合和扩展:模组用来加强AXIS2延展性,但模组不可以热部署,因为模组改变AXIS2整体行为及制度。