偶也开始研究OSGi了,这东西真不错。不过官方的OSGi标准包太大了,前两天偶根据规范实现了其Module Layer部分并根据大家提到的一些不足,增加了自定义ClassPath和NativeCode的功能,这下应该可以用在基于Spring的Webapp上了~
不多说了,看看测试代码吧:
java 代码
- public class TFramework extends TestCase {
-
- private Framework framework;
-
- public void setUp() {
- framework = new Framework();
- framework.addFrameworkListener(new IFrameworkListener() {
- public void frameworkEvent(IFrameworkEvent event) {
- if (event.getMessage() != null) {
- System.out.println(event.getMessage());
- }
- if (event.getThrowable() != null) {
- event.getThrowable().printStackTrace();
- }
- }
- });
- }
-
- public void tearDown() {
- framework = null;
- System.out.println();
- }
-
- public void testBundle() throws Exception {
-
- framework.addClassPath("C:\\osgi\\ws\\commons-logging.jar");
- framework.addLibraryPath("C:\\osgi\\os");
-
-
-
-
-
-
-
-
-
-
-
- framework.installBundle("C:\\osgi\\test.jar");
-
- ClassLoader cl = framework.getClassLoader();
-
- URL explicitURL = cl.getResource("com/yipsilon/osgi/test/Test.class");
- URL implicitURL = cl.getResource("com/yipsilon/osgi/test1/Hello.class");
- URL externalURL = cl.getResource("org/apache/commons/logging/LogFactory.class");
-
- System.out.println("implicitURL: " + (implicitURL != null));
- System.out.println("explicitURL: " + (explicitURL != null));
- System.out.println("externalURL: " + (externalURL != null));
-
- Class explicitClass = cl.loadClass("com.yipsilon.osgi.test.Test");
- Class implicitClass = cl.loadClass("com.yipsilon.osgi.test1.Hello");
- Class externalClass = cl.loadClass("org.apache.commons.logging.LogFactory");
-
- System.out.println("implicitClass: " + (implicitClass != null));
- System.out.println("explicitClass: " + (explicitClass != null));
- System.out.println("externalClass: " + (externalClass != null));
- }
- }
看完了知道这东西该怎么用了吧... 嘿嘿!!
不过要真正实现Webapp功能,还需要加一些东西,这些稍后我会开发出来~~进度的快慢全凭偶的空闲时间的多少... faint
PS:怎么附件加不进去呐??才1.5MB而已....
分享到:
相关推荐
osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍
资源名称:OSGI原理与最佳实践内容简介:国内第一本OSGi图书OSGi国内推广者林昊多年经验的结晶涵盖OSGi从入门到深入的知识体系引领OSGi国内研究和普及本书基于作者多年使用OSGi的经验而编写,涵盖了OSGi从入门到深入...
利用R-OSGi实现分布式OSGi应用...然后通过一个简单的功能实现由浅入深地讲述传统 OSGi 和 R-OSGi 上的两种不同实现,让您对实际操作加深印象。最后,探讨了 R-OSGi 的目前使用情况以及整个分布式 OSGi 应用的发展前景。
讲OSGI应用的讲OSGI应用的讲OSGI应用的讲OSGI应用的讲OSGI应用的
一个osgi例子,加压后两个文件夹,一个是源代码,一个是可运行文件 点击即可看结果
把OSGI部署成一个可运行的例子,怎样 部署启动一个OSGI
OSGI 入门资料PDF,包括OSGI实战、OSGI进阶、OSGI 入门和整合Spring、OSGI原理与最佳实践
网上收集的OSGI资料. 包括: OSGi原理与最佳实践(精选版).pdf OSGI实战和源码.rar osgi进阶.pdf Introduce.OSGi.ppt OSGi.in.action.ppt r4.cmpn.pdf r4.core.pdf r4.enterprise.pdf
OSGi学习不错的材料 OSGi学习不错的材料 OSGi学习不错的材料 OSGi学习不错的材料
OSGI 实例 eclipse 插件开发
OSGi的入门教程,帮助初学者快速了解OSGi的定义、用途及组成。
OSGi开发文档和实践指南,描述了OSGI的开发流程
osgi资料
osgi,林昊写的osgi实战和进阶,学习osgi的好东西,入门的首选。
《 OSGi实战》是学习OSGi的全面指导,利用与架构和开发人员相关的示例清楚地讲解OSGi概念,同时探讨了很多实践场景和技术,阐述了开发人员有多需要OSGi,怎么将OSGi嵌入其他容器中,将遗留系统移入OSGi的最佳实践,...
是一本适合新接触OSGI开发学习的一本很好的书,本书介绍了Equinox, Spring-DM和Felix这三个常用的OSGi容器的使用、开发、以及WebApplication的开发部署;介绍了OSGi的规范和Core Framework和Layer。包含书中的用例源...
OSGi.NET框架是一个参照了OSGi规范的模块化管理框架。框架为应用程序(组件(bundle))提供了一个标准环境。整个框架可以划分为一些层次: 1.运行环境 2.模块(Bundle) 3.生命周期管理 4.服务注册 5.扩展点...
基于OSGi框架之开发环境搭建基于OSGi框架之开发环境搭建
介绍OSGI组件编程,详细介绍用eclipse和Equinox开发OSGI程序
OSGi的入门资料,网上找的,初探OSGi 的全文