JBoss Seam 与 Apache DeltaSpike 的未来

  • Kostis Kapelonis
  • 张龙

2012 年 5 月 9 日

话题:JavaRedHat语言 & 开发架构

今年初,JBoss发布了Seam Web Framework 3.1 版。然而,这并非仅仅是 Seam 的另一个小版本号升级,与之相反,该版本将是 Seam 的最后一个“打包”发布,也是一个重要的里程碑。未来的开发将会以不同的方式进行,因为现在 JBoss 的精力已经开始放在了Apache DeltaSpike上。

Apache DeltaSpike(目前还处于孵化器中)是一套 Java CDI(Contexts and Dependency Injection)扩展的集合。该描述听起来会很熟悉,因为这也是 Seam 3 的最初目标:扩展 CDI 的一套模块,提供超越 Java EE 6 的诸多功能

那么 Seam 3 将会如何呢?Apache DeltaSpike 会成为 Seam 4 么?为了得到这些问题的答案,InfoQ 有幸采访到了 Red Hat/JBoss 的首席软件工程师Pete Muir以了解详情:

InfoQ:能否谈谈 DeltaSpike?它会成为 Seam 的延续么?

大约在 4、5 个月前,我们开始讨论 Seam 3 的未来,我们(来自内部的 JBoss/Red Hat 与社区孵化器的项目经理)想要实现它。但我们很快发现这并非一个好方向!为什么呢?

在 Java EE 6 发布后,各种各样的 Java EE 平台扩展(构建在 CDI 扩展 SPI 之上)涌现了出来。起初,我们觉得这很棒,因为这表明 CDI 与 Java EE 6 是非常流行的,并且为众多开发者提供了一个很棒的生态圈。然而,我们很快就发现虽然 Java EE 6 与 CDI 实现了核心编程模型的标准化,但在其上面的一个层次却出现了分裂——扩展。

在调研其他的 CDI 社区(如Apache MyFaces CODICDISource)时,我们都有相同的感觉——从用户社区的投票结果中我们发现这些用户的感觉亦是如此——他们真正需要的只是一种方式而已、当然是一种优秀的方式来完成任务。我们据此想出了 DeltaSpike,它是个中间方,通过它可以将 Seam 3、Apache MyFaces CODI 等优秀的一面结合到一起。

头三个月证明这么做是正确的。DeltaSpike 0.1 业已发布,它关注于 CDI 编程模型的核心扩展。每个人都认为它要比 Seam 3 与 CODI 都好。

因此从目标、思想与内涵上来说,DeltaSpike 是 Seam 的延续,即便在 API 上并非如此!

InfoQ:DeltaSpike 是 Seam 4 的核心么?

我们并不打算发布 Seam 4,但我这里要谈谈我们关于将 DeltaSpike 融合进JBoss AS的一些想法(因为它正是 Seam 3 的延续)。

我们希望 JBoss AS 能够成为 DeltaSpike 的最佳应用场所——优秀的工具、示例、指南、良好的兼容性以及出类拔萃的性能。我们希望通过对 Apache DeltaSpike 上游的源代码及二进制的兼容性来实现对 Java EE 其余部分的 100% 兼容。

这就是我们对下一代“Seam”的愿景。

InfoQ:与 MyFaces 的关系如何?Seam 会与 MyFaces 合并么?抑或说只有一些组件会合并而其他组件依然留在 Seam 3 中?

最终目标是将 Seam 3 与 MyFaces CODI 的全部内容都迁移到 DeltaSpike,充分吸收这两者的优势。我们还会借鉴 CDISource、Software Mill 及 Cambridge Technology Partners 等的想法。我们的态度是实用至上,应该从核心特性着手,然后再逐步展开。我觉得你会在接下来的几个月中看到更大的发展势头,因为核心已经快完成了,我们可以基于此开始构建更多的扩展。

InfoQ:Seam 3.x 呢?还会发布 Seam 3.2 么,抑或下一个版本会有些不同?

我们已经承诺在可预见的未来会继续支持 Seam 3 的 Bug 与安全修复,至少会持续到社区觉得 DeltaSpike 已经成为主流为止。我认为我们都希望发布的版本是 Seam 3.1.1 而非 3.2。

我们现在正在努力编写从 Seam 2 迁移至 Java EE 6 的指南,对 Seam 3 也会提供相应的指南,直到 DeltaSpike 完成为止。

InfoQ:你还想对 Seam 用户说些什么呢?

激动的时刻就在眼前。我认为很快围绕着 Seam 的阴霾就将散去,进而迎来明媚的阳光。请访问jboss.org/developer来了解更多信息!

Apache DeltaSpike artifacts现已位于 Maven Central 中了,感兴趣的用户可以尝试。

查看英文原文:The Future Of JBoss Seam And Apache DeltaSpike

JavaRedHat语言 & 开发架构