会不会跟着AXIS2上贼船
SOA架构是目前比较流行和追求的架构,AXIS2也是开发WebService比较流行和追随者众多的中间件,网上也有大量的文章,分析AXIS2提供的例子。十分遗憾,难以找到比较深入的例子和有自己思想的文章,不是说作者水平低,而是作者都是按照例子的思想和AXIS2的思路来写作。
首先,我们来分析一下什么情况下采用服务架构比较好,应该包括以下几种情况:
1、 分布式环境,两台不同的服务器之间,调用对方提供的服务,实现数据交换等;
2、 多态的客户端,应用系统提供多种访问形式,既有浏览器,也有客户端程序,但是服务器端采用同一服务程序,支持多种形式客户端的访问;
3、 客户端程序是由不同语言编写,WebService用来实现应用集成或者数据集成等。
接着,我们再来分析一下,采用服务提供上述目标和采用API提供上述目标的一些差异,应该有以下几个方面:
1、 如果采用API形式,必须要提供API程序包给调用者,并且说明API包的结果、可以调用的函数、调用函数的规范等;如果采用WebService形式,只需要告诉调用者接口规范和名称,调用者开发时,基于选择的开发环境,采用的API是环境提供的API;
2、 采用API形式,要求调用者的开发语言必须和API语言相通;如果采用WebService形式,调用者准受规范、而不受限于开发语言;
3、 采用API形式简单直接,效率也比较高;如果采用WebService形式,免不了数据的封装、拆封等过程,免不了服务查询等过程,效率可能会低一些。
最后,我们来看一下,采用AXIS2提供消息封装的几种形式:
1、 POJO
2、 ADB
3、 AXIOM
4、 JiBX
5、 XMLBEAN等。
注意,上述各种消息封装形式带来的以下不同:
1、 首先是消息的格式,有RPC
MessageReceiver、RawXML[*]MessageReceiver、以及自己定义的消息格式等;
2、 其次,服务程序的参数和返回值是不同的;
3、 最后,除RPC、AXIOM外,其余的程序都需要有存根等。
由于个人水平有限,我就想提出以下问题:
1、 采用POJO形式,我想应该能够满足不同开发语言的调用要求,毕竟RPC是标准的协议规范,但是,如果POJO中,有复杂的BEAN,不知道其它语言能不能很好封装消息;
2、 采用AXIOM形式,只不过是对XML构造和扩充进行了优化,也应当不会有太大的问题,并且扩充余地也比较大;
3、 其它形式提供的服务能够被另外的语言很方便地调用吗?
由于个人水平有限,提出上述看法,希望高手不吝执教!
分享到:
相关推荐
标题中的"axis2-idea-plugin-1.7.9.zip_axis2_axis2-idea-plugin_idea导入axis2_"提到了几个关键元素,分别是"axis2"、"idea-plugin"和"idea导入axis2",这暗示了这个压缩包是用于在IntelliJ IDEA这款集成开发环境...
axis2-adb-1.5.4.jar axis2-adb-codegen-1.5.4.jar axis2-codegen-1.5.4.jar axis2-corba-1.5.4.jar axis2-fastinfoset-1.5.4.jar axis2-java2wsdl-1.5.4.jar axis2-jaxbri-1.5.4.jar axis2-jaxws-1.5.4.jar axis2-...
axis2-1.6.2.zip, windows axis2工具,根据 WSDL生成java文件。 1、axis2客户端下载地址:http://mirror.esocc.com/apache//axis/axis2/java/core/1.6.2/axis2-1.6.2-bin.zip; 2、下载解压在D:\Work_Program_...
Axis2是Apache软件基金会开发的一个开源Web服务引擎,它提供了基于SOAP(Simple Object Access Protocol)的Web服务实现。本文将详细介绍Axis2的API及其在Web服务开发中的应用,同时也会探讨Axis2的帮助文档如何协助...
Apache Axis2是著名的开源Web服务框架,用于构建和部署高效且灵活的Web服务。这个框架是基于Axis1的升级版,提供了许多改进和新特性,包括更好的性能、模块化架构和增强的MIME支持。标题提到的“axis2-1.5.1-bin.zip...
### Axis与Axis2在WSDL2Java工具中的发布差异 #### 概述 本文将详细介绍Axis与Axis2在使用WSDL2Java工具进行服务发布的差异性。这两种工具都是Apache项目的一部分,它们为开发者提供了强大的Web服务支持。其中,...
如果你需要对Axis2进行修改、扩展或者想要了解其内部工作原理,这个包会非常有用。源代码也可以让你构建特定的定制版,根据项目需求排除某些模块或添加自定义功能。 Apache Axis2的核心特性包括: - 模块化架构:...
在IT行业中,Web服务是应用程序之间进行通信的一种标准方法,而Axis和Axis2是两种流行的Java SOAP(简单对象访问协议)框架,用于构建和消费Web服务。本文将深入探讨这两个API,以及它们在Web服务开发中的作用。 ...
Axis分为两个主要版本:Axis1.x和Axis2.x,它们都是Java平台上的Web服务实现,但在设计和功能上有所不同。 Axis1.x是较早的版本,它在Web服务领域有着广泛的应用。Axis1.x基于Servlet API,提供了SOAP消息处理和...
Axis1, Axis2, Xfire, CXF 区别 Axis1, Axis2, Xfire, CXF 是四种常用的WebService框架,它们之间有着不同的特点和应用场景。本文将对这四种框架进行详细的比较和分析,以帮助开发者选择合适的框架。 XFire 是一种...
在IT行业中,Axis2是Apache软件基金会开发的一个用于构建Web服务和Web服务客户端的框架,主要基于Java语言。本文将详细讲解如何使用Axis2来发布Web服务以及如何生成客户端代码来调用这些服务。 首先,让我们了解...
Axis分为两个主要版本:Axis1和Axis2,这两个版本在功能、性能和设计上都有所不同。 **Axis1** 是最初的版本,发布于2003年,它基于SOAP 1.1规范,提供了一个快速开发Web服务的框架。Axis1使用JavaBeans Activation...
Axis2是Apache软件基金会开发的一款Java Web服务框架,主要用于构建和部署Web服务。在Web服务领域,Axis2扮演着核心的角色,它提供了丰富的功能来支持服务导向架构(SOA)。标题中的"axis2-1.6.2.zip"指的是Axis2的...
Apache Axis2是Java平台上的一个Web服务框架,它提供了高性能、灵活的服务开发和部署机制。而Spring Boot是基于Spring框架的一个微服务启动器,简化了配置并提供了快速开发新应用的能力。通过将两者结合,我们可以...
Axis2 是一个开源的 Web 服务引擎,由 Apache 软件基金会维护。它提供了一个灵活、可扩展、性能高效的 Web 服务解决方案。Eclipse 是一个流行的集成开发环境(IDE),Axis2 插件安装可以使得开发者更方便地使用 Axis...
Axis2是Apache软件基金会开发的一个开源Web服务框架,主要用于构建高度可扩展且模块化的Web服务。这个框架基于SOAP(简单对象访问协议)和WS-*(Web服务*规范集),为开发者提供了一种高效且灵活的方式来创建和部署...
**标题:“Axis2.jar包”** **描述:**在IT行业中...综上所述,Axis2.jar包及其相关的jar文件是Java环境中构建和使用Web服务的关键组件,它为开发者提供了高效、灵活的工具集,使得Web服务的开发变得更加容易和可靠。
Eclipse Java Axis2 是一个基于Java的Web服务开发框架,由Apache软件基金会开发。它主要用于构建和部署SOAP(简单对象访问协议)Web服务。在Java环境中,Eclipse作为流行的集成开发环境(IDE),提供了强大的支持来...
axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例