使用 OSGi 声明式服务来编写高级功能部件

可以使用捆绑软件 activator 类以及接口(例如,ManagedServiceServiceTracker)的直接实现来控制简单的功能部件。随着捆绑软件之间的关系变得更复杂,使用 OSGi 声明式服务 (DS) 之类的工具将功能部件分解为各项服务会更好。DS(有时称为“服务组件运行时”,即 SCR)提供了 OSGi 服务的生命周期和注入管理。

关于此任务

将功能部件逻辑组织为一组声明式服务有许多优点:
  • 可以延迟到使用服务(包括装入用于提供此服务的 Java™ 类)时才激活此服务;允许服务器快速启动,以及将资源使用量保持在最低程度。
  • 将对服务的引用放入服务注册表中(即使尚未激活该服务),以便可以解析对于此服务的依赖性。
  • 可以在运行时插入对于其他服务的依赖性,并且将根据这类依赖性对各种服务的激活进行排序。
  • 必要时,可以根据服务属性的更改来取消激活服务和重新激活此服务。

许多在线资源(包括 OSGi 社区 Wiki)提供了有关使用 OSGi 声明式服务的详细信息。

此任务对于如何向 DS 声明服务、如何获取对于其他服务的引用以及如何管理每项服务的配置属性进行了简单描述。


用于指示主题类型的图标 任务主题

信息中心的条款和条件 | 反馈


时间戳记图标 最近一次更新时间: Wednesday, 2 September 2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_feat_service_ds
文件名:twlp_feat_service_ds.html