QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

Apache 孵化器 CXF 团队发布 2.0.4 版

  • 2008-02-01
  • 本文字数:1097 字

    阅读完需:约 4 分钟

Apache 孵化器 CXF 团队宣布 2.0.4 版本已经可以下载了。它是 2.0.3 版的补丁(解决了超过 50 个 JIRA 项目)。来自 IONA 的 Dan Kulp 主导了这次发布的大部分工作。

CXF 是一个特性齐全的开源 Web 服务框架,它支持:

  • 不同的绑定,包括 SOAP、REST 和 CORBA。
  • WS-*,包括 WS-Addressing、WS-Security、WS-ReliableMessaging 和 WS-Policy
  • RESTful Web 服务
  • 多种传输(HTTP、JMS、JBI)
  • 可插拔数据绑定
  • 使用 WSDL 进行契约优先的开发和由 Java 开始进行代码优先的开发。

关键设计考虑包括:

  • 从核心代码干净地分离前端,如 JAX-WS。
  • 兼具简单性,例如,无需注解就可创建客户端和端点。
  • 高性能
  • 可嵌入

Dan Diephouse解释

CXF XFire 最新的光鲜版;它是 2.0 的 XFire。CXF 是 Celtix 和 XFire 社区在 Apache 社区会师后的结合体。

当 Tim O’ Brien为什么会有人选择 XFire 而非 Axis2 时,Dan 回答道:

我个人的观点是,在 CXF 中有一个大的关注点,Paul [Brown] 称之为,开发者生物工程学。它的 API 相当友好。你可以很容易的重新配置 CXF,无需操心 XML。[CXF 和 Spring 更深入地集成在了一起,包括支持 Spring 2.0 XML 语法。] API 和 Spring 配置彼此对照得很好,这使得人们很容易理解。我们同样是基于 Java 5 的,它带来了更友好的体验。

例如,CXF 提供了几种在运行时动态调用服务的方法,无需从 WSDL 产生客户端。假设你有一个 WSDL,它定义了一个操作“echo”。这个操作接收一个字符串,并输出一个字符串。为此,你可以按照以下方法使用 DynamicClientFactory:

DynamicClientFactory dcf = DynamicClientFactory.newInstance();
Client client = dcf.createClient(“echo.wsdl”);
Object[] res = client.invoke(“echo”, “test echo”);
System.out.println("Echo response: " + res[0]);

Atif Khan 使用 JAX-WS 提供者模型构建了一个 POX(Plain Old XML)服务例子,并使用 Spring 配置它,表示同意

[CXF] 相当直观,易于使用且功能强大。

Glen Mazza发布了使用CXF 的另一个例子,使用FOP 从国家气象服务获取PDF。

InfoQ 也征询了 Paul Brown 的观点,他正通过一些消费者使用 CXF:

CXF 是一个工业强度的 Web 服务框架。IONA 在这个项目上进行了广泛的投资,在中国有一个开发团队。整个 CXF,和 Axis 这样的其他框架一样,在列集(marshaling)上完成了非常好的工作,将事务时间降低到整个开销的近乎最小值。

具有喜欢 CXF 倾向的人们会构建他们自己的系统。在打包一个可内嵌的 Web 服务组件(如可以加到 Spring 中)问题上,CXF 做得很好。Axis 更多提供的是一个端到端的架构。

查看英文原文 The Apache Incubator CXF team announced the availability of the 2.0.4 release

2008-02-01 02:351190
用户头像

发布了 255 篇内容, 共 58.7 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

马化腾的区块链理想

CECBC

区块链 马化腾

第四周总结

Geek_ac4080

第11周作业

Vincent

极客时间 极客大学

三步法解析Express源码

执鸢者

面试 大前端 Node Express

每天都要写吗?

Nydia

架构师训练营第四周学习总结

吴传禹

极客大学架构师训练营

阿里大牛原创技术好文精选整理:Redis+Nginx+设计模式+Spring全家桶+SQL+Dubbo

Java架构之路

Java 程序员 面试 编程语言

Linux的信号

菜鸟小sailor 🐕

c++

典型的大型互联网应用方案

garlic

极客大学架构师训练营

十六、深入Python字符串

刘润森

Python

架构师训练营第四周课后作业

Gosling

极客大学架构师训练营

如何设计大型互联网系统架构

天天向上

极客大学架构师训练营

第四课系统架构课后作业

Geek_michael

极客大学架构师训练营

职场求生攻略答疑篇之 4 —— 社会有多真实,人心就有多虚伪

臧萌

职场 职场成长

手把手教你分析Mysql死锁问题

捡田螺的小男孩

MySQL 死锁

第11周总结

Vincent

极客时间 极客大学

Week 3学习总结

balsamspear

极客大学架构师训练营

自学编程,看书还是视频?

沉默王二

程序员 读书 自学编程 视频

一文带你轻松了解Python导入模块的各种命令

计算机与AI

Python

Flink时间服务和计时器-6-5

小知识点

scala 大数据 flink

甲方日常 32

句子

随笔杂谈

一次用户故事地图之旅

Bruce Talk

敏捷开发 用户故事 Product Owner 用户故事地图

十五、深入Python输入和输出

刘润森

Python

大区块链的必然性

CECBC

区块链技术

架构师训练营第四周作业

我是谁

极客大学架构师训练营

架构师训练营第四周学习总结

Gosling

极客大学架构师训练营

Week 3命题作业

balsamspear

极客大学架构师训练营

迭代开发中的微服务拆分

码猿外

架构 微服务 架构演进

给新入职工程师的10条建议

supernova

管理 职场 工作方式

区块链要如何解决供应链金融痛点?

CECBC

区块链 金融

大型互联网系统常用的技术方案

天天向上

极客大学架构师训练营

Apache孵化器CXF团队发布2.0.4版_SOA_Jean-Jacques Dubray_InfoQ精选文章