随着OSGi/Equinox逐渐成为Java EE服务端的基础软件架构,OSGi上部署WEB应用程序的解决方案日渐成熟。这里介绍三种目前我们所知的解决方案,前两种是Equinox组织提出的方案,后一种是OpenCore平台采取的解决方案。 解决方案一: 部署OSGi/Equinox在Servlet容器中 具体实现: 把OSGi/equinox打包在WAR中,当Servlet容器加载WAR时,启动OSGi框架。 WEB-INF的目录结构大致如下(大致如此): * /WEB-INF        ...
Eclipse Equinox OSGi平台的启动方式一般有两种:一种是直接通过startup.jar启动,另一种是通过Equinox提供的可执行的加载器(Launcher)启动。两种方式都是通过读取config.ini文件初始化系统,只是配置方式有所不同。 通过startup.jar启动 命令: java -jar startup.jar -console -clean configuration/config.ini的配置很简单,只需要在osgi.bundles参数加入你需要启动的插件,示例配置如下: INI 代码   osgi.bundles ...
OpenCore是基于OSGi/Equinox构建的纯插件体系结构的服务端平台,主要功能是在OSGi基础上支持分级IoC、B/S结构、数据库访问等服务端特性,是我们开发的opengoss平台与产品的内核。 OpenCore1.0.0M1的发布只是一个很小的起点,但我们相信这是一个正确的技术方向,Java领域无论服务端还是客户端都将基于纯插件体系构建,并在同一业务领域(如我们开发的网络管理系统)实现组件级的复用与协作。 OpenCore1.0.0M1将在光缆修复后发布在www.sf.net/projects/opengoss 或者 code.google.com/p/opengoss ...
尽管我在一年前曾预测OSGi最终将部署在60%的Java虚拟机上,但OSGi的发展速度还是超出了我们的想象。一直认为OSGi规范是Java领域被埋没的一颗明珠,它优美的组件体系结构正是Java平台不可或缺的部分,应该直接纳入到JDK中。 众所周知,Java平台有庞大的开源框架、类库支持,但我们却一直停留在类与API层次的复用,一个较大的Java项目往往有大量的Jar包混乱的堆积在classpath下。所以Java领域迫切需要一个实现组件级复用的解决方案,将所有这些混乱不堪的类库与API以组件的形式发布,在统一的容器内组装 ...
OSGi体系结构 OSGi 的初衷是面向嵌入式系统的应用,支持在一个Java虚拟机上加载和启动多个Java应用程序。随着OSGi在Eclipse3.0上的应用成功,其逐渐成为构建纯插件结构的企业级应用软件系统的首选平台。 OSGi 是一个纯插件的体系结构,OSGi 框架实现是一个最为核心的插件,逻辑实现分层见下面两张图:              L0层Java执行环境 OSGi最初规范定位到嵌入式系统,例如家电、汽车、手机等 ...
2006-12-25

OpenCore:OSGi上部署Apache Common Log

关键字: Apache Common Log
Apache Common Log提供的动态Logger发现机制实在损害Apache基金会的声誉,这是一个看似巧妙实际上画蛇添足的设计。这种机制无法保证在有多 ClassLoader的JEE或OSGi环境下正常工作,这几天收到了Spring-OSGi google群组发出的“Commons logging madness”信件超过20封,今天又在java-blog上收到“common log woes"的文章,估计这个问题把很多人搞疯了:) 最后,这帮家伙终于讨论出了解决方案,就是用SLF4J来替换Apache Common Log的实现。我 ...
OpenCore: OSGi上部署Hibernate的四种方式 OpenCore是在OSGi规范上构建的微内核(Microkenerl),基于纯组件(Pure Plugin)开放源码企业应用软件平台。OpenCore数据层实现OSGi上集成Hibernate,Hibernate及其依赖库作为一个单独的插件,这样带来一个问题,就是OSGi平台的插件类加载机制使得Hibernate无法正确加载分布在不同插件内部的模型对象与O/R映射文件。本文讨论四种解决方案: 模型对象(Domain Objects)插件 ...
erylee
搜索本博客
最近加入圈子
存档
最新评论
评论排行榜