`
hzh0725
  • 浏览: 82382 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Equinox service分析

    博客分类:
  • java
阅读更多

Equinox service分析

osgi中bundle间的协作,一般来说有两种方式:

  • class层面的应用

          比如package的import,export,或者bundle间的直接引用

  • instance层面的应用

          这个就是service应用

equinox service和spring 里我们常说的service区别 

主要区别就是equinox service是需要管理使用它的bundle,和提供service自身bundle的状态的,因为osgi是一个动态的平台

 

equinox service使用

一般有两个方法:

  • 直接使用
ServiceReference reference = context.getServiceReference(***.class.getName());
Object service = (***) context.getService(reference);
 
  •  使用 ServiceTrack
ServiceTracker serviceTracker = new ServiceTracker(context, ***.class.getName(), null);
serviceTracker .open();
Object service = serviceTracker.getService();

 

分享到:
评论

相关推荐

    使用Equinox开发OSGI应用程序工程及源码

    在Equinox中,可以使用PlatformAdmin或AdminService来执行这些操作。 7. **源码分析**: - `com.mioo.osgi.deploy.rar`:这部分可能包含的是一个部署脚本或者工具,用于部署OSGi Bundle到Equinox运行时环境。 - `...

    equinox快速入门

    Equinox的核心是OSGi(Open Service Gateway Initiative)规范,该规范定义了一种动态的模块系统,允许Java模块在运行时被加载、卸载和更新,而不会影响到其他模块。通过使用OSGi,开发者可以创建松耦合的模块,...

    『原创』OSGI研究笔记1 - Equinox ServletBridge模式下调用Datasource

    标题中的“OSGI研究笔记1 - Equinox ServletBridge模式下调用Datasource”表明了这篇文章将探讨如何在OSGI(Open Service Gateway Initiative)环境下,利用Equinox的ServletBridge模块来访问和使用DataSource。...

    equinox-jetty-birt:BIRT 报告简单的运行时示例

    OSGi(Open Service Gateway Initiative)是一种模块化系统,用于管理Java应用程序的生命周期和依赖关系。它允许开发者将复杂的应用程序分解为小的、独立的模块,这些模块可以单独安装、更新和卸载,而不会影响其他...

    《osgi与equinox 创建高度模块化的java系统》第6章DS代码

    通过分析这些组件的配置和实现,你可以学习到如何在实际项目中应用DS来构建高度模块化的Java系统。 总的来说,DS是OSGi环境中构建可扩展、松耦合系统的强大工具。通过深入理解DS及其在Equinox中的实现,开发者可以...

    Equinox Server-side Examples Community-开源

    Equinox是Eclipse基金会下的一个核心项目,它实现了OSGi(Open Service Gateway Initiative)规范,为Java应用程序提供了一个模块化运行时环境。OSGi是一种动态的模块化系统,允许开发者创建可热插拔的模块,这在...

    OSGi_Service

    OSGi(Open Service Gateway Initiative)是一种Java模块化系统,它为创建、部署和管理软件组件提供了一种强大而灵活的方式。在Java世界中,OSGi被视为解决大型复杂应用系统中模块化问题的有效解决方案。下面我们将...

    四大OSGI框架最新技术对比分析

    Apache Felix 是一个致力于实现 OSGi R4 Service Platform 和其他与 OSGi 相关的技术的社区项目,遵循 Apache 许可。最初,OSGi 规范的目标是嵌入式设备和家庭服务网关,但其模块化、组件导向和服务导向的原则适用于...

    OSGI错误分析解决

    通常,这些内容包括如何配置OSGI容器(如Apache Felix、Equinox等)、理解和解析OSGI错误代码,以及如何调试和修复问题。 在处理OSGI错误时,以下几个步骤是关键: 1. **复现问题**:尝试在开发环境中重现问题,以...

    osgi学习笔记(三)

    在实际开发中,有一些工具和库能简化OSGi服务的使用,例如Apache Felix和Equinox是流行的OSGi运行时,它们提供了友好的API和工具来管理和调试服务。此外,Bndtools是一个强大的集成开发环境插件,它支持OSGi项目的...

    OSGI实战-若干问题.txt

    - 文档还提到了使用Eclipse的Equinox OSGI Declarative Service时遇到的问题。为了解决这个问题,需要下载`eclipse-equinox-SDK-3.4.2.zip`,并将其中的`org.eclipse.equinox.ds_1.0.0.v20080427-0830.jar`和`org....

    OSGi Modularity - Tutorial

    OSGi(Open Service Gateway Initiative)是一个为Java平台定义的组件和服务模型规范。这个规范的核心是定义了一个Java模块化系统,允许组件(也称为服务)动态地被激活、停用、更新和卸载。OSGi的一个实际优势在于...

    OSGi实战进阶篇

    - **6.4 开发、发布和使用Service**:探讨如何在OSGi环境中开发、发布和使用Service,这是OSGi模块化的核心概念之一。 - **6.5 测试和调试**:提供关于如何测试和调试OSGi应用的具体方法和技术。 - **6.6 发布基于...

    osgi 实战 pdf

    《OSGi实战》一书由BlueDavy...通过详细的知识点讲解和实战案例分析,这本书为想要掌握OSGi技术的开发者提供了宝贵的资源。无论是初学者还是有经验的开发者,都能从中获益,提升自己在模块化架构和动态服务领域的技能。

    深入理解OSGi

    OSGi(Open Service Gateway Initiative)是一个开放标准,用于创建模块化Java应用程序和服务。这个框架提供了一种动态的模块化系统,允许软件组件在运行时被加载、卸载和更新,而无需重启整个应用程序。《深入理解...

    OSGI实战

    - **目标**: 通过本书籍,作者旨在分享其在OSGI领域的实践经验,特别是使用Equinox框架的心得体会。 #### 二、体验OSGI - **2.1 需求实现**: - **场景**: 通过具体的项目案例,展示如何利用OSGI解决实际问题。 -...

    模块化系统的构建专家OSGI.pptx

    一、传统项目模块结构分析 传统项目中的模块结构是硬编码的,命令是变化的,系统开发完成后可能需要增加新的命令来满足不同的系统管理功能。这种方式存在以下缺点: * 每次增加新的命令或修改旧的命令都需要修改...

    OSGI实战.docx

    此章节可能会分析一些实际的OSGI应用场景,比如大型企业级应用、嵌入式系统或者复杂的Web应用,展示OSGI如何帮助优化这些系统的架构和维护。 五. OSGI框架 文档列举了三个主要的OSGI实现框架: 1. Equinox:由...

    很久之前的osgi整理

    OSGi的源代码分析对于理解其内部工作机制,如类加载机制、依赖管理和生命周期管理,是非常有价值的。 标签“工具”则可能涵盖了如何使用OSGi开发环境,如Eclipse Equinox或Apache Felix,以及如何配置和调试OSGi...

    SpringDM笔记13-OSGi服务注册与引用

    同时,熟悉相关的工具如Equinox、Felix等OSGi容器的使用,可以帮助我们在实际开发中更高效地管理服务。 总之,SpringDM结合OSGi服务注册和引用,提供了强大的模块化系统构建能力。通过源码学习和使用相应的工具,...

Global site tag (gtag.js) - Google Analytics