使用 Felix 和 Struts2 开发 Web 应用
引言
Open Service Gateway Initiative(OSGi) 是一个针对 Java 动态模块开发的规范。基于中间件的 OSGi 技术提供了一个面向服务,基于组件的开发环境,并提供标准化的方式来管理整个软件生命周期。OSGi 为那些需要长时间运行,动态更新并且对运行环境的影响尽可能小的系统提供了很好的支持。基于 OSGi 开发的系统具有复杂度低、可重用、动态部署、可持续运行、开发简单等特点。
OSGi 技术结合了上述特点的各方面来定义一个动态服务部署框架,可以进行远程管理。OSGi 技术起初只是关注于嵌入式领域,诸如机顶盒、服务网关、手机等应用环境。但是它完美地适用在任一模块化、面向组件、面向服务的项目。Eclipse V3.0 以后采用 OSGi 作为其模块化和动态化平台,设计了 Equinox 内核,使用 OSGi 技术帮助其进行类载入,大大提升了 Eclipse 的启动速度。在应用服务器上,WebSphere,Weblogic,JBOSS 等著名的服务器都支持或使用了 OSGi 技术。
Felix 是一个 Apache 旗下 OSGi 实现的开源框架,它的最终的目标是提供一个完全兼容的 OSGi 框架和标准服务的实现。Felix 当前实现了 OSGi 规范 4 的大部分内容,目前 Felix 提供的 OSGi 框架功能是非常稳定的。
采用 Spring DM 和 Jetty 等 Web 容器开发基于 OSGi 的 Web 应用的方法已经在很多书本或技术文章上提及。但是这种开发方法与传统的 Web 开发差别较大,开发人员很难转换到这种开发模式上,并且它的稳定性也没有得到充分的验证。
原文网址:http://www.fengfly.com/plus/view-184177-1.html