![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
osgi
文章平均质量分 72
tkxing
这个作者很懒,什么都没留下…
展开
-
利用felix和struts2实现osgi web(二)
OSGI(Open Service Gateway Initiative)在java世界中,提供了一种从机制上进行模块划分的理念和实践,对于java的模块化生产将会产生不可估量的推动作用。 由于OSGI是从嵌入式开发中发展起来的,在Eclipse3.0以后的Equinox实现了OSGI的标准后,OSGI开发模式在java世界中开始流行起来。但是对于企业级的应用,特别是多层的企业级...2010-10-25 15:36:35 · 117 阅读 · 0 评论 -
利用 distribution-cxf实现dosgi
在osgi规范R4.2版本中,定义了分布式的osgi。distribution-cxf是这个规范的一个实现。利用d-cxf可以在osgi环境发布出标准的web service,同样在osgi环境中,也可以引用标准的web service。在distribution-cxf的官方网站中,有几个这样的例子。这里,对于利用spring dm实现的dosgi进行分析 这个demo中,包含了...原创 2010-11-14 21:22:21 · 159 阅读 · 0 评论 -
在osgi中应用log4j(二)
在上一篇中,利用了Proxy和在Bundle中加载jar包的方法,对其他的bundle输出log4j的服务,应用log4j输出日志。但是在其中,是回避了在osgi整个环境中加载log4j的问题。从而带来的问题是,在系统应用的其他的框架,利用log4j输入的日志,无法正确的显示出来,这带来了很多的问题,特别是在系统调试时,因为看不到所用框架的日志,就无法正确的判断系统的运行状况。所以,在osgi的...原创 2010-11-08 12:51:50 · 143 阅读 · 0 评论 -
equinox在standalone application中启动
前一段时间,利用Felix作为osgi container,测试了osgi bundle的开发,并通过和springdm的结合,实现对于service发布和引用的实现。 现在希望把以前实现的一些bundle和界面显示结合起来,当然可以把Felix Container和应用bundle发布在Web Container中,然后通过Client端(可以是RCP或者Browser)来...2011-09-15 16:10:11 · 158 阅读 · 0 评论 -
osgi服务模型
基于 OSGi 服务模型实现组件之间松耦合通信 简介: OSGi Service Layer 所定义服务模型是以发布 (Publish) 发现 (Find) 和绑定 (Bind)为基础操作的动态协作合作模型。所谓的服务 (Service) 就是标准的 Java 对象向服务注册表 (Service Registry) 注册的一个或者多个接口 (interface)。 Bundl...原创 2011-02-11 10:29:51 · 260 阅读 · 0 评论 -
对于osgi bundle的集成测试研究
由于OSGI技术优秀的模块化技术分离,在不同的bundle之间进行交互的方式有两种:一是包(package)的导出和导入,二是bundle向外部发布service。第二种方式是osgi中推荐的方式,同时这种方式具有SOA的特点。但是,这种模块化的组织方式,特别是通过服务在不同的bundle间进行交互,使得osgi环境中的测试,必须在osgi container中进行,增加了测试环境搭建的难...2011-02-10 17:06:23 · 168 阅读 · 0 评论 -
osgi中不同classloader之间对象的复制问题解决
在osgi环境中(我用的是felix),不同的bundle都有自己独立的classloader,当在一个bundle中复制另外一个bundle加载的对象时,会报类型不匹配的错误。这一问题的解决,需要利用反射的方法,进行处理。 transloader是一个在不同的classloader间进行对象复制和对象转换的工具包,对于对象的复制,实现如下: Obje...原创 2011-05-31 11:20:31 · 343 阅读 · 0 评论 -
在osgi容器外应用osgi bundle提供的服务
任何系统都不是孤立存在的,都有一个持续发展的过程,在java技术的应用中,osgi的理念提出,从机制上解决了java中模块化的问题,使得Java真正能够实现模块化的开发。但是,在osgi之前,已经存在了很多的系统和各种不同的框架技术,每一个都有自己的使用范围和优点,osgi一方面不可能覆盖所有以前平台和框架提供的各种功能,另一方面传统的系统也不可能因为osgi的出现,进行完成的重构,因此osgi...原创 2010-11-05 10:25:22 · 149 阅读 · 0 评论 -
在osgi中应用log4j(一)
Osgi中对于Log的提供,在规范中规定了几种方式,felix也提供了一个LogService实现osgi中的日志输出。在利用这个日志是遇到了两个方面的问题,一是LogService的可管理功能比较弱,二是对于大多数的java开发人员而言,log4j是一个既好用又熟悉的工具了,为什么不继续利用log4j作为自己的日志输出工具呢? 在Osgi的bundle中,是可以直接利用传...2010-11-04 14:48:48 · 292 阅读 · 0 评论 -
利用struts2 springdm felix实现一个web应用
springdm是spring和osgi之间的桥梁,利用这个桥梁在osgi的bundle中,可以方便的利用spring的IOC、AOP、配置等特征来管理bundle中的对象,在Struts2的发布包中,自带了一个struts2-osgi-demo-plugin的例子工程,其中就是一个利用springdm管理osgi struts2 bundle的实现。 这个例子配置运行的步骤如下:...原创 2010-10-25 18:02:53 · 89 阅读 · 0 评论 -
利用felix和struts2实现osgi web(三)
在前一篇文章中,详细的描述了几个应用bundle的实现过程和其中的配置要点。下面描述一下真正的web工程,也就是将要部署到tomcat中的普遍的web工程的实现过程。 创建一个普通的web工程:webapp,配置web.xml文件支持Struts2和OSGi,Struts2中实现了一个Struts2-osgi-plugin,其中OSGi容器用的是felix,这也是为什么在这个工程...原创 2010-10-25 17:06:36 · 129 阅读 · 0 评论 -
利用felix和struts2实现osgi web(一)
这是一篇引用的文章,原网址为:http://www.ibm.com/developerworks/cn/web/1007_shaobing_flexosgi/index.html?ca=drs- 引言Open Service Gateway Initiative(OSGi) 是一个针对 Java 动态模块开发的规范。基于中间件的 OSGi 技术提供了一个面向服务,基于组件的开发环境,并...原创 2010-10-25 16:49:10 · 245 阅读 · 0 评论 -
在osgi bundle中访问osgi container之外的传统服务
osgi container是java实践中的一个框架,在这个框架中,按照osgi的规范,实现了java中module的思想,从而真正实现了java的模块化开发。 在模块的互用方面,osgi提供了两种方式:一是通过export/import包实现,二是通过在osgi bundlecontext中注册service,实现各个模块之间的交互。第二种方式符合SOA的标准,是os...原创 2010-11-22 06:46:58 · 121 阅读 · 0 评论