Axis2 Web服务和CXF Web服务之间的区别 [英] Difference between Axis2 webservice and CXF web service

查看:128
本文介绍了Axis2 Web服务和CXF Web服务之间的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果有人能帮助我理解axis2 Web服务和CXF Web服务之间的区别,我将不胜感激.

I would be grateful if any one help me to understand the difference between axis2 web service and CXF web service.

推荐答案

axis2 Web服务和CXF Web服务之间的主要区别如下:

The main differences between axis2 web service and CXF web service are as follows:

  1. CXF支持WS-Addressing,WS-Policy,WS-RM,WS-Security, 和WS-I BasicProfile. Axis2支持所有这些功能,除了 WS-Policy,将在以后的版本中提供支持.

  1. CXF has support for WS-Addressing, WS-Policy, WS-RM, WS-Security, and WS-I BasicProfile. Axis2 supports each of these except for WS-Policy, which will be supported in an upcoming version.

CXF是在考虑Spring的情况下编写的; Axis2不是.

CXF was written with Spring in mind; Axis2 is not.

Axis2支持更广泛的数据绑定,包括XMLBeans, JiBX,JaxMe和JaxBRI以及它自己的本机数据绑定ADB. 请注意,仍然考虑支持JaxME和JaxBRI 在Axis2 1.2中进行实验. CXF当前仅支持JAXB和 宙斯盾; CXF 2.1中将提供对XMLBeans,JiBX和Castor的支持.

Axis2 supports a wider range of data bindings, including XMLBeans, JiBX, JaxMe and JaxBRI as well as its own native data binding, ADB. Note that support for JaxME and JaxBRI are still considered experimental in Axis2 1.2. CXF currently supports only JAXB and Aegis; support for XMLBeans, JiBX and Castor will come in CXF 2.1.

Axis2支持多种语言-有C/C ++版本 除了Java版本,还可用.

Axis2 supports multiple languages--there is a C/C++ version available in addition to the Java version.

但是,在比较这些框架时,了解它们开发Web服务的方法与比较功能同等重要.从开发人员的角度来看,两个框架的行为都非常不同. Axis2采用了一种使它在许多方面类似于微型应用服务器的方法. Axis2附带了WAR,可以部署在Servlet容器(例如Tomcat)上,该容器旨在使Web服务更易于即时管理和部署. Axis2 Web管理模块允许在应用程序运行时动态配置Axis2-可以上载,激活或停用新服务,并且可以更改其参数.管理UI还允许在一个或多个正在运行的服务上启用模块.将UI用于这些目的的唯一缺点是,通过UI进行的配置更改不是持久性的-当重新启动servlet容器时,它们将消失.

In comparing these frameworks, though, it's just as important to look at their approach to developing web services as it is to compare features. From a developer perspective, both frameworks behave very differently from one another. Axis2 has taken an approach that makes it in many ways resemble an application server in miniature. Axis2 comes packaged with a WAR that can be deployed on a servlet container such as Tomcat that is designed to make web services easier to manage and deploy on the fly. The Axis2 Web Administration module allows Axis2 to be configured dynamically while applications are running--new services can be uploaded, activated or deactivated and their parameters may be changed. The administration UI also allows modules to be enabled on one or more running services. The only downside to using the UI for these purposes is the fact that configuration changes made through it are not persistent--they go away when the servlet container is restarted.

Axis2致力于提供独立于其他应用程序的独立Web服务,并提供多种功能,以及一个很好的模型,可随着时间的推移通过其模块化体系结构添加更多功能.一些开发人员可能会发现他们的需求有些繁琐或繁琐.这些开发人员可能更喜欢看Apache CXF.

Axis2 lends itself towards web services that stand alone, independent of other applications, and offers a wide variety of functionality, and a good model for adding more functionality as time goes on through its modular architecture. Some developers may find that a little too cumbersome or heavy-duty for their needs. These developers might prefer to look at Apache CXF.

CXF专注于开发人员的人机工程学和可嵌入性.大多数配置都是通过API而不是繁琐的XML文件完成的,Spring的集成非常受重视,包括对Spring 2.0的支持,并且CXF的API和Spring配置之间的关系非常紧密. CXF强调代码优先设计,使用简单的API使从现有应用程序开发服务变得更加容易(并且其可嵌入性也有帮助).

CXF concentrates on developer ergonomics and embeddability. Most configuration is done via the API instead of cumbersome XML files, Spring integration is heavily emphasized, including support for Spring 2.0, and CXF's APIs and Spring configuration mirror one another fairly closely. CXF emphasizes code-first design, using simple APIs to make development of services from existing applications easier (and its embeddability helps too).

无论您选择哪种框架,都将受益于活跃,稳定的开源社区.这些框架中的每一个都有公司的支持:Axis2由WSO2支持,而CXF由Iona支持.两者都有活跃的开发者社区. Axis2已经存在了很长时间,但是CXF正在迅速追赶.我的建议是:如果多语言支持很重要,那么Axis2是不二之选.如果您关注与Java之类的项目紧密集成的Java实施,则CXF是一个更好的选择,尤其是将Web服务嵌入其他程序中时.如果这些项目中的新功能并不重要,并且您对Axis1相对满意,则应考虑坚持使用并紧跟最新的维护版本,直到有商业理由要迁移为止.

Whichever framework you choose, you'll have the benefit of an active and stable open source community. Each of these frameworks has corporate backing: Axis2 is backed by WSO2, and CXF by Iona. Both have lively developer communities. Axis2 has been around longer but CXF is catching up quickly. My recommendation is this: If multilanguage support is important, Axis2 is the clear choice. If you care about an implementation focused on Java with tight integration into projects like Spring, CXF is a better choice, particularly for embedding web services inside of other programs. If the new features in these projects are not important, and you're relatively happy with Axis1, you should consider staying on this and keep up with the latest maintenance releases until you have a business reason to migrate.

这篇关于Axis2 Web服务和CXF Web服务之间的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆