`

OSGi实现Equinox与应用服务器

阅读更多
Equinox项目是Eclipse开源组织提供的OSGi框架的实现。Eclipse自3.0版本开始,其内核移植到OSGi框架上。通过OSGi框架强大的组件控制,交互和管理能力,再加上Eclipse插件的自有特点,Eclipse开源框架得到了跳跃式的发展。同时,OSGi规范得益于Eclipse IDE环境庞大的使用者,OSGi联盟也进入了快速发展时期。

OSGi作为应用服务器的基础架构已经成为现实。Equinox提供了一组基础的Bundle,使得使用JSP、Servlet和Struts等J2EE技术的Web应用项目可以运行于Equinox OSGi环境中。同样的,Equinox通过一组Bundle,可以将Equinox OSGi应用嵌入到现有的Web服务器(如Tomcat,Jetty等)和应用服务器(如Websphere,Weblogic等)中。

下面是Equinox在J2EE应用方面的部分Bundle列表:

org.eclipse.equinox.servletbridge
Servlet Bridge

该Bundle提供一个底层的Hook servlet,使得Equinox可以嵌入到现有的应用服务器中运行。该Bundle中的servlet启动嵌入的Equinox并使其可以处理来自底层应用服务器接收的HTTP请求。

org.eclipse.equinox.http.servletbridge
HTTP ServletBridge

该Bundle为底层的应用服务器(如Tomcat,Jetty等)发布为OSGi HTTP服务提供一层封装。封装的应用服务器必须安装该servlet bridge。

以上两个bundle是将应用服务器作为bundle集成进入OSGi大环境的关键。

org.eclipse.equinox.http.servlet
HTTP Servlet

该Bundle为在Equinox中发布其他servlet处理引擎(如传统的应用服务器)为OSGi HTTP服务提供支持 。

org.mortbay.jetty
Jetty

嵌入式Jetty实现的Bundle封装。目前Equinox提供的Jetty实现版本为5.x。

org.eclipse.equinox.http.jetty
HTTP Jetty

该Bundle封装Jetty为标准的OSGI HTTP服务。目前该服务只能使用Jetty 5.x版本;如果用户希望使用Jetty 6.x版本的Bundle封装,可以参考ops4j上的实现。

原文在:http://developer.51cto.com/art/200906/126282.htm
分享到:
评论

相关推荐

    深入理解OSGi:Equinox原理、应用与最佳实践,书本源代码

    在深入理解OSGi:Equinox原理、应用与最佳实践中,我们可以学习到以下几个关键知识点: 1. **模块化编程**:OSGi的核心是模块化,它将应用程序划分为独立的单元,称为服务或bundle。每个bundle都有自己的类路径,...

    使用Equinox开发OSGI应用程序工程及源码

    9. **部署与打包**:最后,我们需要将OSGi应用打包成RCP(Rich Client Platform)应用或者部署到服务器环境。Eclipse的PDE(Plug-in Development Environment)工具可以协助完成这个过程。 总之,通过学习和实践...

    Geting started with Equinox and OSGi

    Equinox是所有Eclipse系统的基础,从嵌入式航空自助登机亭、滑雪场闸门到丰富的客户端应用、集成开发环境(IDE),甚至高性能应用服务器如WebSphere和Spring dm server等,都有它的身影。 2. **创建第一个Bundle**...

    OSGI中包含web服务器配置需要的jar.zip

    这些jar文件可能包括了OSGI容器(如Apache Felix或Equinox)与Web服务器(如Jetty或Tomcat)的适配器,以及Servlet、JSP和其他Web相关的API实现。 1. **OSGI容器**: OSGI容器是管理OSGI模块的基石,如Apache Felix...

    OSGi Web示例工程

    在OSGi框架中,Equinox是Eclipse基金会提供的一个实现,它是OSGi规范的主要实现之一,广泛应用于服务器端开发。Equinox提供了一个强大的、可扩展的运行时环境,支持动态模块加载和卸载,使得开发者可以灵活地更新和...

    OSGI实战教程

    这种模块化设计方式特别适用于复杂应用程序的开发和维护,如企业级应用服务器和桌面应用程序。 文档中提到的实战部分主要基于Equinox,它是OSGI规范的一个参考实现,同时也提到了其他框架如Oscar和Knopflerfish,...

    OSGi理论与实战

    Equinox提供了丰富的API和工具,支持模块的动态管理和服务注册与发现,是许多Java应用服务器(如Weblogic、Glassfish)选择的底层框架。 ### Equinox高级实战 深入理解Equinox不仅包括基本的模块管理和类加载机制...

    spring osgi相关资源

    Spring OSGi是Spring框架与OSGi(Open Service Gateway Initiative)规范相结合的一种技术,它允许在OSGi容器中运行和管理Spring应用。OSGi是一种模块化系统,为Java应用程序提供了动态部署、版本控制和依赖管理的...

    equinox-SDK-3.8.2

    Equinox广泛应用于大型企业级应用、嵌入式系统、服务器中间件等,比如Eclipse IDE本身就是基于Equinox构建的,其他如Apache Felix、IBM WebSphere也是OSGi的实现。 总的来说,Equinox SDK 3.8.2为开发者提供了一个...

    OSGi Modularity - Tutorial

    Eclipse Equinox是基础OSGi规范的参考实现,并且是Eclipse应用程序运行的运行时环境。在Eclipse中,最小的模块化单位是插件(Plugin),在很多情况下,插件(Plugin)和模块(Bundle)这两个术语可以互换使用。 ...

    OSGI组件编程(osgi.component.programming)

    在本教程中,我们将深入探讨如何使用Eclipse和Equinox实现OSGI程序的开发。 首先,确保你已经安装了Eclipse SDK 3.2 M5版本,这是开发OSGI应用的基础工具。此外,还需要从CVS服务器上获取教程项目。通过Eclipse的...

    equinox快速入门

    OSGi(Open Service Gateway Initiative)是一种模块化系统,用于Java应用程序的组件化和动态管理,而Equinox是OSGi规范的一种实现,广泛应用于Eclipse IDE、服务器平台以及嵌入式系统。 【描述】虽然描述部分为空...

    深入理解OSGi

    - **企业应用**:OSGi常用于大型企业级应用,如电信设备、嵌入式系统和服务器软件,因为它可以解决大型项目的复杂性和可维护性问题。 - **动态部署**:通过OSGi,可以在不中断服务的情况下进行软件升级和配置更改...

    OSGi 入门+进阶+实战

    4. **企业应用案例**:OSGi常用于企业应用服务器(如Apache Karaf)和嵌入式系统,如路由器、智能家居设备等。 5. **故障排查**:学习如何使用日志、诊断工具和调试技巧来定位和解决OSGi应用中的问题。 6. **性能...

    osgi 在web容器中部署

    Pax Web提供了一个叫做Jetty的嵌入式HTTP服务器,可以与Tomcat协同工作,实现OSGi应用的部署。 在实际操作中,你需要按照以下步骤进行: 1. **准备环境**:确保你的开发环境中已经安装了Tomcat服务器和OSGi框架,...

    OSGI应用程序

    3. **Web应用程序与OSGI**:在OSGI环境中实现Web应用程序,通常需要一个支持OSGI的Web服务器或Servlet容器,如Jetty或Apache Felix HTTP Service。这些容器可以在OSGI框架内部运行Servlets和其他Web组件。 4. **...

    OSGI Server

    OSGI服务器的核心是Equinox,这是Eclipse项目的一个组成部分,常用于桌面应用和RCP(Rich Client Platform)应用。随着技术的发展,Equinox逐渐被引入到移动设备和手持设备上,而"OSGI Server"项目则旨在消除在...

    两个osgi的例子程序

    在压缩包“OSGI-Web”中,我们可以期待找到与Web相关的OSGi实现,这可能包括如何在OSGi环境中开发和部署Web应用。这可能涵盖使用Jetty或Tomcat等Servlet容器作为OSGi服务器的配置,以及如何创建和注册Servlet或...

Global site tag (gtag.js) - Google Analytics