感受OSGI在ServiceMix4.0中的应用
ServiceMix4介绍
ServiceMix4是一个令人期待的ServiceMix新版本,它不仅支持JBI规范,更重要的是支持OSGI。与ServiceMix3.x相比,对OSGI的支持是它最大的特色。它包括Kernel和NMR两个项目。Kernel是基于OSGI实现框架Flex实现的,它是ServiceMix4的基石;NMR构建于Kernel之上,它是JBI规范的具体实现。
ServiceMix4架构图
关于ServiceMix4可以参看这里
。
关于Kernel可以参看这里
。
关于NMR可以参看这里
。
由于ServiceMix4同时支持OSGI和JBI,所以它支持OSGI和JBI这2种部署。部署在ServiceMix3.x上的组件绝大多数可以直接部署在ServiceMix4中。
关于ServiceMix3.x到ServiceMix4的迁移,可以参看这里
。
下面来看看基于OSGI部署的组件如何部署在ServiceMix4中。
初试ServiceMix4
准备工作
下载ServiceMix4
下载地址:http://servicemix.apache.org/SMX4/download.html
安装ServiceMix4
直接将下载后的文件解压即可。
启动ServiceMix4
直接双击/bin文件夹中的servicemix.bat,片刻之后,就可以启动ServiceMix4。
启动后的界面如下:
基于OSGI的最简单实例
该实例实现了将一个文件夹中的xml文件拷贝到另外一个文件夹中。
代码片段如下:
......
<bean class="org.apache.servicemix.common.osgi.EndpointExporter"/>
<file:poller service="honnom:pollFile" endpoint="pollEndpoint"
file="honnom/inBox/" targetService="honnom:sendFile" >
</file:poller>
<file:sender service="honnom:sendFile" endpoint="sendEndpoint"
directory="honnom/outBox/">
</file:sender>
.....
代码介绍
<bean class="org.apache.servicemix.common.osgi.EndpointExporter"/>
使用该bean完成poller和sender的OSGI注册。
<file:poller service="honnom:pollFile" endpoint="pollEndpoint"
file="honnom/inBox/" targetService="honnom:sendFile" >
</file:poller>
定义一个poller,周期性地从文件夹honnom/inBox中读取xml格式的文件。
<file:sender service="honnom:sendFile" endpoint="sendEndpoint"
directory="honnom/outBox/">
</file:sender>
定义一个sender,将接收到的文件存放在文件夹honnom/outBox中。
部署
直接将file-osgi.xml拷贝到ServiceMix4的安装目录的deploy下。
运行
ServiceMix4部署完file-osgi.xml后,会在/bin文件夹下生成两个子目录:
honnom/inBox和honnom/outBox。拷贝一个xml格式的文件到inBox中,几秒钟后该文件会被转移到outBox中。
总结
可以看出ServiceMix4的部署更加简单,可以直接通过OSGI部署xml文件,而不需要将xml打包成sa(.zap文件)。当然也可以将xml打包成sa,以JBI组件的方式进行部署。
- 大小: 16.5 KB
- 大小: 17.5 KB
- 大小: 25.3 KB
分享到:
- 2009-05-22 14:32
- 浏览 2041
- 评论(0)
- 论坛回复 / 浏览 (0 / 2359)
- 查看更多
相关推荐
深入理解OSGi:Equinox原理、应用与最佳实践.pdfOSGi应用开发
基于OSGi和Spring开发Web应用的博文对应的代码
基于OSGi和Spring开发Web应用
基于OSGi和Spring开发Web应用教程 教程
基于OSGi和Spring开发Web应用
《深入理解OSGi Equinox原理、应用与最佳实践 》完整版。OSGI相关书籍,非扫描版!!!高清文字版!!!
第三部分基于Equinox的OSGi应用与实践,详细介绍了OSGi的服务纲要规范(OSGi ServiceCompendium)和OSGi企业级规范(OSGi ServiceEnterpress)中最常用的几个子规范内容,在这一部分里,将会把OSGi技术从理论落地到...
深入理解OSGi:Equinox原理、应用与最佳实践源代码,同时附带equinox-SDK-3.8源代码。
利用R-OSGi实现分布式OSGi应用 本文通过介绍传统 OSGi 应用程序及 R-OSGi 的实现方式入手,阐述了 R-OSGi 对于 OSGi 规范的实现方式。然后通过一个简单的功能实现由浅入深地讲述传统 OSGi 和 R-OSGi 上的两种不同...
基于 OSGi 和 Spring 开发 Web 应用
包括从Bundle如何命名、模块划分、依赖关系 处理到保持OSGi动态性、管理程序启动顺序、使用API基线管理模块版本等各方面的实践技巧,此外还介绍了Spring DM的原理以及如何在OSGi环节中进行程序测试。
给出了可用插件bridge和一个可用osgi例子,可以帮助学习osgi的同学学习部署osgi程序到tomcat中。
深入理解OSGi:Equinox原理、应用与最佳实践,书本源代码
讲OSGI应用的讲OSGI应用的讲OSGI应用的讲OSGI应用的讲OSGI应用的
在felix2.0.1扩展Hibernate,使之工作于OSGI框架之中。
《Java应用架构设计 模块化模式与OSGi》PDF版本下载
osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍osgi介绍