13得票5回答
在JUnit测试的上下文中使用OSGi声明式服务

我正在尝试使用JUnit在OSGi中实现多 Bundle 集成测试。 所谓的集成测试是指实例化一组 Bundle,以自动验证该子系统的功能。 我们正在运行 Equinox 并使用 Eclipse 作为工具链。Eclipse 提供了“Run as JUnit Plug-in”选项,可以启动 ...

13得票2回答
OSGi声明式服务与ManagedService用于配置服务的区别?

最近我刚刚发现,在OSGi中,声明式服务可以将组件的配置设置为必需,以便在激活时接收它,消除了组件激活和配置之间的差距。我还意识到,通过modified方法可以接收配置更新。 对我来说,这个功能似乎与实现ManagedService接口并将其发布为您提供的“服务”之一所提供的功能非常相似。 ...

10得票1回答
Apache Felix SCR @Reference 技巧速查表

我在我的应用程序中使用Apache Felix声明式服务,并正在寻找一份“作弊表”,描述可以赋予@Reference注解的参数。我曾经看到过一个包含非常详细信息的“作弊表”(或表格),但现在好像找不到了。我认为这对许多Felix用户非常有用。我所说的参数有: cardinality: MA...

9得票2回答
如何在服务启动时正确禁用OSGi服务?

我创建了一个带有公开(声明性)服务的OSGi bundle。如果在调用激活时发现有什么问题,以致于无法提供服务,我需要阻止其被公开。目前激活函数如下: public void activate(ComponentContext context, Map<String, Object&g...

8得票1回答
OSGi声明式服务条件绑定

我有这样一个场景,我有三个声明式服务提供相同的接口(比如说一个读者接口,我有readerimpl1-database、readerimpl2-flat file、readerimpl3-memory)。我希望有一个消费者仅绑定到数据库实现。在组件定义中,我们给它一个名称,所以我非常确定该名称在...

8得票1回答
OSGi声明式服务在Eclipse中的应用、多个服务接口以及线程安全问题

我刚刚在我的代码中发现了一个现象,归结为: 我有一个OSGi声明式服务,提供两个服务接口,并进行以下配置: <?xml version="1.0" encoding="UTF-8"?> <scr:component xmlns:scr="http://www.osgi.o...

7得票1回答
是否存在一个关于OSGi术语、框架及其关系的概述?

我正在尝试适应企业级OSGi编程的广阔生态系统,但我发现很难概述这个技术栈是如何组合在一起的,哪些技术建立在彼此之上,哪些技术解决了什么问题,以及它们如何适应我目前所理解的有限术语。 例如:Apache Felix、Equinox、Karaf、Jira OSGi、Spring DM、Arie...

7得票2回答
一个OSGi片段捆绑包能否发布一个声明式服务?

我有一个片段捆绑包,我创建它是为了访问第二方jar中的一些附加功能。我的片段应该注册一个服务来公开这个新功能。但似乎没有起作用。在深入研究故障排除之前,我想知道这是否被允许?也就是说,Felix SCR的捆绑包监视器是否查看或忽略片段?