最新文章列表

Apache ServiceMix入门之五

我们也可以在Servicemix中,利用Camel支持通过Java Bean来处理我们的业务逻辑。 首先,我们需要理解org.apache.camel.Processor这个接口,它只有一个方法process,参数是Exchange。 Exchange是什么呢?我们可以将Exchange理解为一个“消息”的封装,它包含了in和out两部分,这两部分又可以分别包含一个(或零个)body和多个(或零 ...
killko 评论(0) 有1267人浏览 2014-12-20 12:59

OSGI Blueprint入门之十

 在传统的Ioc容器里,對象的生命周期一般为静态的,在初始化时创建后,就不会在运行期间撤下或替换。 在Blueprint容器中,可以引入OSGI服务引用,而OSGI服务是动态存在的,也就是说随时有可能由不可用变为可用或由可用变为不可用。 我们可以将一个bean发布出一个osgi服务,然后将这个服务的引用(reference)再注入另一个bean中,这个bean又可以再基于这个服务引用来实现并发布 ...
killko 评论(2) 有2085人浏览 2013-03-15 09:28

Apache ServiceMix入门之三

上节介绍了一个简单的Camel的小例子,在例子中,介绍了Camel的Componet、Endpoint、URI的概念,总结起来就是: 1、Component就是Endpoint的实例工厂; 2、在编排的camel路由中,Componet是用URI来表示的; 3、每个camel路由都有一个信息的来源Endpoint,并通过路由流过/流向目的Endpoint。 上节举了一个file compon ...
killko 评论(0) 有3319人浏览 2013-03-14 00:41

Apache Servicemix入门之二

ServiceMix正常运行后,我们尝试编写一个Blueprint XML文档: <?xml version="1.0" encoding="UTF-8"?> <blueprint xmlns="http://www.osgi.org/xmlns/blu ...
killko 评论(3) 有3419人浏览 2013-03-07 23:25

OSGI Blueprint入门之九

前几日,有网友提了一个问题:用blueprint注册了 一个servlet服务,并将另一个osgi服务注入这个 servlet服务bean里,以便在处理用户的http请求 时调用。但是部署运行后,发现servlet那里注入 的osgi服务一直为null。 表面上,以上的应用似乎设计简单合理。为什么 会出现这样的问题呢? 原因很简单:此servlet非彼 servlet。 当blueprint容器 ...
killko 评论(1) 有1960人浏览 2013-03-02 13:18

OSGI Blueprint入门之八

      Blueprint除了组装bean,osgi服务引用等的DI(IOC)功能之外,还可通过各种命名空间(namespace)来扩展。在《Blueprint入门之六》中,我们就用过一个与ConfigAdmin相关的命名空间(http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0)。       除了ConfigAdmin之外, ...
killko 评论(0) 有2251人浏览 2013-02-19 08:13

乱凑的一个osgi的demo

   有网友问我有没有osgi的demo,于是将前段时间给朋友的一个例子拿来整理了一下。       首先,这个demo是在karaf下运行的,项目由三个bundle组成,会涉及自定义的console命令,服务的发布和引用。       项目为maven项目,为方便构建,将三个bundle项目作为一个父项目下的三个子项目。项目经mvn package构建后,在三个子项目的target文件夹下分别 ...
killko 评论(0) 有2143人浏览 2013-02-07 17:43

OSGI Blueprint入门之三

    在上一篇的例子中,我们在bean节点里用property注入了一个OSGI service引用。那么这个OSGI service是从哪里来的呢?下面我们介绍一下Blueprint如何注册一个OSGI service。     首先我们在java代码中定义一个interface,然后用一个类去实现它,就和面向接口开发一样。最后,我们就通过Blueprint的service节点发布这个OSGI ...
killko 评论(0) 有1240人浏览 2013-02-05 18:25

OSGI Blueprint入门之七

    Blueprint既然是DI规范,自然在注入方面有很多的需求。在前几篇中,我们已接触了服务引用的注入: <reference id="coderService" interface="com.ponder.ICoder" timeout="0"/> <bean id="processor" ...
killko 评论(0) 有1461人浏览 2013-02-05 09:02

OSGI Blueprint入门之六

    Blueprint用另一个命名空间(http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0)支持osgi configadmin来配置节点的相关参数。 <?xml version="1.0" encoding="UTF-8"?> <blueprint xmlns=& ...
killko 评论(0) 有3019人浏览 2013-02-04 09:34

OSGI Blueprint入门之五

     reference-list除了可以用setter的方式注入OSGI service外,还可以用listener的方法来实现OSGI service的注入。 <?xml version="1.0" encoding="UTF-8"?> <blueprint xmlns="http://www.osgi.org/xm ...
killko 评论(0) 有2087人浏览 2013-02-01 12:21

OSGI Blueprint入门之四

   上一篇提及了OSGI service的发布和引用,在 Blueprint里,服务的发布和引用是最常用的一种 最佳实践,通过借助服务引用这样松散的藕合方 法,可以让OSGI的动态性发挥得淋漓尽致。     一些较低层的,细粒度的服务引用可以注入到 bean里,再将这个bean发布出更高层次的,粗粒 度的服务,而Blueprint container将会通过监听 来自OSGI framework ...
killko 评论(0) 有1757人浏览 2013-02-01 09:06

OSGI Blueprint入门之三

    在上一篇的例子中,我们在bean节点里用property注入了一个OSGI service引用。那么这个OSGI service是从哪里来的呢?下面我们介绍一下Blueprint如何注册一个OSGI service。     首先我们在java代码中定义一个interface,然后用一个类去实现它,就和面向接口开发一样。最后,我们就通过Blueprint的service节点发布这个OSGI ...
killko 评论(0) 有1918人浏览 2013-01-31 14:02

OSGI服务发布与引用

    OSGI context提供service register方法负责osgi服务的注册发布,服务发布时,可带上服务属性,这些服务属性可用于服务引用方查找服务时的filter。     一般来说,没有依赖的简单服务,可以直接在bundle的activator start方法里注册发布,但通常情况下,服务都会存在或多或少的依赖,由于osgi平台的动态性,被依赖的服务并不能确定在依赖它的服务所在的 ...
killko 评论(1) 有1938人浏览 2012-09-25 10:14

OSGi容器中Bundle之间Synchronous Communication

  OSGi Core定义了一个服务层,提供了一个Bundle之间交互的简单机制,通过注册Java Object 至OSGi service registry。      Blueprint Container     (1) Blueprint Configuration     默认配置文件位于:ProjectDir/src/main/resources/OSGI-INF/bluep ...
snoopy7713 评论(0) 有1509人浏览 2012-09-11 17:07

【BluePrint】用OSGi 应用程序开发和工作的最佳实践

 简介:  十多年来,OSGi 技术已经解决了围绕复杂性、可扩展性和可维护性的应用程序开发模块性挑战。随着 IBM® WebSphere® Application Server Feature Pack for OSGi Applications and JPA 2.0 的引入,OSGi bundles 构成的企业级 Java™ 应用程序现在可以被开发和部署到 WebSphere Applic ...
snoopy7713 评论(0) 有3576人浏览 2012-02-04 18:41

最近博客热门TAG

Java(141744) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54919) .net(54785) Web(54514) 工作(54118) Linux(50905) Oracle(49875) 应用服务器(43289) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37267) 数据结构(36424)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics