OSGi
iteye_4350
这个作者很懒,什么都没留下…
展开
-
打造一个基于OSGi的Web Application——动机和目标
OSGi技术发展至今也有好几年了,然而除了在富客户端应用(以Eclipse为代表)和服务器应用(如大多数的应用服务器)方面大放光芒之外,在Web Application方面的应用和资料却少之又少。一方面,在OSGi规范中,对于Web应用方面的规划尚不成熟,即使在最新的4.2版中,也仅仅只有一个HttpService,这个简陋的service甚至不能覆盖任何一个现有的Servlet规范;另一方面,各...2010-03-23 14:37:00 · 108 阅读 · 0 评论 -
打造一个基于OSGi的Web Application——搭建开发环境
工欲善其事必先利其器,在正式开发之前,花一点时间来构建开发环境还是有必要的。本章介绍一下我的开发环境。我使用的开发环境如下:Eclipse:当然了,最新版3.52,其中包含了最新版的WTP(Eclipse Web Tools Platform),个人感觉,不比MyEclipse差,而且最重要的是,它是free的。equinox-SDK:版本为3.6M5,实现了OSGi R4 core...2010-03-23 15:32:00 · 125 阅读 · 0 评论 -
打造一个基于OSGi的Web Application——在WebApplication中启动OSGi
本章将创建一个Web Application项目,并描述如何在此应用中启动OSGi。首先,在Eclipse中创建一个Dynamic Web Project,名字为OSGi-Web,Context root为osgi。这个项目只作为部署Web Application使用,相关java代码放在另外一个Java Project中,因此我们再创建一个新的Java Project,名字为OSGi-W...2010-03-23 18:28:00 · 114 阅读 · 0 评论 -
打造一个基于OSGi的Web Application——为OSGi容器提供Web Application环境
本章叙述如何在OSGi容器中提供必要的Web Application环境,其中包括Servlet 2.4、Jsp 2.0和Commons-Logging相关的package,使得其他在OSGi容器中的bundle可以import。为了在OSGi容器中提供export的package,一般有三种方式:一个常规的bundle,自身包含必要的class,同时在Export-Package中声明...2010-03-24 22:49:00 · 126 阅读 · 0 评论 -
打造一个基于OSGi的Web Application——在OSGi容器中管理Web元素的实现思路
要在OSGi容器中动态的管理Web相关的元素,目前有两种方式。一种是通过类似于bridge的方式,现在外层的Web Application中配置一个对应的元素,然后通过对这个元素将外部的访问桥接到OSGi容器内部。在OSGi容器内部,会有一个总控的service,通过这个service来提供Web元素的动态管理,以及对外界请求的响应和分发。Equinox的Servlet Bridge就是采用的...2010-03-25 17:34:00 · 99 阅读 · 0 评论 -
OSGi中获取Service的几种方式
在OSGi中,Service是动态管理的,OSGi容器提供的好几种获取和使用Service的方式,那么这几种方式各有什么优、缺点呢,下面我们就以org.osgi.service.log.LogService为例来分别讲一讲。一。最原始的方式:<!--<br /><br />Code highlighting produced by Actipro Co...2010-03-26 18:09:00 · 201 阅读 · 0 评论 -
打造一个基于OSGi的Web Application——增加日志输出功能
到目前为止,我们的基于OSGi内核的Web Application还没有任何的日志输出功能,本章将介绍如何在这个Web应用中配置和输出日志。在前面的配置中,我们的应用中只含有commons-logging.jar,而OSGi容器之外的代码中,均是通过配置commons logging的Log对象来输出日志的,在默认的配置下,系统将采用Jdk14Logger来作为输出日志的实现,这对我们来说是远...2010-03-27 00:28:00 · 102 阅读 · 0 评论 -
打造一个基于OSGi的Web Application——设置初始化bundle的StartLevel
在前几天的文章中描述了如何在Web Application中启动OSGi,参见打造一个基于OSGi的Web Application——在WebApplication中启动OSGi后来发现其中在初始化时加载bundle的方式,还有一些美中不足。这种方式加载的bundle都具有相同的启动顺序,即bundle的初始化默认start level,在之前均没有做过特别的设置,所以默认值...2010-03-29 15:26:00 · 188 阅读 · 0 评论 -
打造一个基于OSGi的Web Application——使用Tomcat原生API来动态管理Web元素:原理
Tomcat的org.apache.catalina.Context接口提供了动态管理注入到Catalina Web Container中的Web元素的API。在基于OSGi的Web Application中,可以利用这个接口来实现在OSGi容器中动态管理Web元素的目的。为了达到这个目的,我们还需要做一些额外的配置。请注意,以下方法仅适用于Tomcat,并非通用的实现,而且只针对5.5.28版和...2010-04-01 12:02:00 · 121 阅读 · 0 评论