ModuleFusion 1.0.2 发布:内含企业级 OSGi

阅读数:298 2008 年 10 月 9 日

话题:Java开源DevOps语言 & 开发架构

面向企业应用的 OSGi 服务栈ModuleFusion 1.0.2 最近发布了。它将多个企业级 Java 应用框架打包成 OSGi Bundles。这样开发者就可以在构建服务器端应用时采用熟悉的技术,而无需使用功能完全的 J2EE 容器了。

该发布包含如下 Bundles:

OSGi 服务平台

  • OSGi 框架(Equinox 或者 Felix)
  • 配置管理
  • 用户管理

框架

  • Google Guice IoC 框架
  • Apache Wicket
  • Hibernate
  • Hibernate JPA 前端
  • Jetty Web 服务器
  • HSQLDB 数据库
  • PAX Web Extender Bundle

ModuleFusion

  • DirInstaller(安装 / 更新 / 移除 Bundles 与配置)
  • JPA 集成
  • Apache Wicket 集成

日志

  • Simple Logging Facade for Java(SLF4J)
  • Apache log4j
  • SLF4J - log4j bridge
  • Commons logging - SLF4J bridge

ModuleFusion 提倡服务器端应用使用 OSGi,它是这样表述的:

ModuleFusion 的目标是帮助程序员将 OSGi 服务平台作为底层的运行时环境。ModuleFusion 包含了针对 Java 企业应用的一站式服务。该服务含有来自于 Java 生态系统最棒的开源框架。此外,ModuleFusion 还具备一些必要的粘合剂代码,以帮助大家轻松地在 OSGi 中使用这些框架。

InfoQ 联系到了项目经理 Roman Roelofsen,并请他详细谈谈 ModuleFusion 与更常用 Java EE 容器之间的比较情况:

借助于 ModuleFusion,我们想创建一个基于 OSGi 的发布,以此来帮助程序员采用 OSGi 编程模型。你可以将其与典型的 Linux 发布进行比较。虽然你可以下载 Linux 内核、GNU 工具和应用,建立文件系统、引导过程并配置好一切,但是安装一个万事俱备的系统要更为简单。

如果你想使用 EJB、JMS、JCA 等框架,那么你必须使用传统的服务器。但你不会总使用它们。事实上,在大多数情况下你最好还是使用一个更轻量级的解决方案。像 JONAS 这样的项目也在强调这一趋势,并已经将这些特性以 OSGi Bundles 的方式提供了出来。

虽然 ModuleFusion 可以包含那些经典的 JEE 特性,但我们仍将精力集中于使用并促进 OSGi 编程模型,比如我们提供 OSGi 服务而非 EJB Session Beans。

接着他又强调了 ModuleFusion 的优势(相应的,也提到了 OSGi):

长话短说,使用 ModuleFusion 具有如下主要的好处:
  • 对于那些过度使用完全 JEE 解决方案的地方,可以提供一站式优雅的轻量级企业服务支持。
  • OSGi 上手时可以节省你大量时间,因为 ModuleFusion 中已经集成了这些框架。解压缩就可以使用——相当简单。
  • 完全使用了 OSGi。
  • 几个示例应用。

Roelofsen 并不是唯一一个以前考虑使用 Java EE、现在改为 OSGi 的企业级 Java 架构师。早在 2007 年的 EclipseCon 上,Gregory Brail 和 John Wells 就关于 BEA 的微服务架构进行了一次演讲,试图将一个商业级 Java EE 服务器的功能分解为可重新组合的 OSGi Bundles。IBM 也将 WebSphere Application Server 6.1 构建为一套 OSGi Bundles,并提供了一个在线演示来说明这种变化。

查看英文原文:ModuleFusion 1.0.2 Released: Enterprise OSGi Distribution