问题标签 [ipojo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
204 浏览

osgi - 嵌入felix时如何解析消费者实例

我有嵌入Felix 的应用程序。现在我正在尝试利用 iPOJO。为此,我创建了具有以下声明的消费者:

一切都是由 ant task 编译的<ipojo ...

iPOJO 的所有示例都假定我的应用程序是在 felix 控制台下启动的。但是(再一次)我的应用程序嵌入了 felix。所以我的问题是如何解决实例YetAnotherConsumer

编辑回答@Neil 问题,根据 iPOJO 文档:

@实例化

目标:声明一个简单的实例(这相当于<instance component="..."> </instance>

我想 iPOJO 和 Felix 的组合将创建我的实例YetAnotherConsumer。所以我的问题是我的应用程序如何访问这个实例?

EDITED 2我已经将日志记录到构造函数中,YetAnotherConsumer所以我可以看到这个没有被调用。这就产生了另一个问题——如何启动 iPOJO,我的 felix 启动如下:

启动 iPOJO 引擎错过了什么?

0 投票
0 回答
209 浏览

java - Apache Aries Managed JPA 能否与 iPOJO 一起使用而不是 Blueprint?

如果是,有人举个例子吗?

0 投票
1 回答
180 浏览

osgi - iPOJO 和服务阻尼

iPOJO 的比较表显示它支持服务阻尼,就像 Blueprint 一样。这是否只是指时间依赖关系或其他服务依赖关系?

0 投票
1 回答
226 浏览

osgi - 是否可以使用 iPOJO 将服务绑定到多个消费者?

在我的 iPOJO 应用程序中,我尝试将服务绑定到两个消费者:

消费者:

服务:

如果我启动consumerA、consumerB 和serviceA,服务只绑定到consumerA。如果我启动 consumerB 和 serviceA,服务将绑定到 consumerB。

是否可以让服务绑定到两个消费者?有注释吗?

谢谢。

0 投票
1 回答
472 浏览

java - iPOJO:@ServiceProperty 和 @Property 之间的区别

http://felix.apache.org/site/how-to-use-ipojo-annotations.html#HowtouseiPOJOAnnotations-@ServiceProperty上的“服务属性”和“属性”有什么区别?

0 投票
1 回答
875 浏览

osgi - iPOJO @Bind/@Unbind 方法允许的签名

在我见过的所有 iPOJO 示例中,@Bind@Unbind回调仅将服务实例作为参数,即

蓝图还允许您拥有

iPOJO 回调也可以访问服务属性ServiceReference吗?还是应该为此使用白板处理程序?

0 投票
2 回答
2684 浏览

osgi - OSGi 组件模型中的捆绑内和捆绑间相互依赖关系

在我当前的应用程序中,我在几个地方遇到了这种模式:我在一个包中有两个服务接口,它们执行不同但相关的工作。

并希望让单例组件实现两者,但发现每个组件都需要对另一个组件的引用:

三个 OSGi 组件模型(DS、Blueprint 和 iPOJO)中的哪一个允许这样做: 1) 何时Service1ImplService2Impl在同一个包中;2)当它们在不同的包中时?

0 投票
2 回答
964 浏览

osgi - Felix 将 OSGI Bundle 列为活动但 Gogo Shell 命令不可访问(依赖相关)

此基本代码成功地使命令 scopeA:test 在 shell 中可访问:

但是,如果我添加一个依赖于另一个 OSGI 组件的构造函数,则该命令将不再可访问,并且“帮助”不会列出它。然而,捆绑包仍然可以加载到活动状态。

B的内容很简单:

为什么不再列出该命令的任何想法?查找有关状态的更多信息以便我可以更好地调试的提示?

0 投票
1 回答
264 浏览

java - 使用 iPOJO 发布非@Instantiate OSGi 服务

我有 OSGi 模块化系统,其中有以下组件:

  • 一些特定的协议实例实现,表示通过特定协议到特定服务器的连接(每个连接服务实例化)
  • 一些特定的协议实例管理器服务,按需创建和预配置实例(通常来自不同捆绑包的多个单例服务)
  • 连接管理器,它聚合协议管理器服务并在需要时要求它们提供协议实例(单一单调服务)

它们被打包到 OSGi 包中,如下所示:


ConnectionManager注释为

并实现Subscriber接口,使其能够发送和侦听通过某种类型传递的消息Event Admin


每个*ProtocolManager都标注有

并实现ProtocolManager接口,使其能够被ConnectionManager服务侦听器发现。


每个*ProtocolInstance都标注有

并实现Subscriber接口。它还实现了接口,该接口提供了和ProtocolInstance等通用连接操作。connect()disconnect()


这里的问题是ProtocolInstances 是手动创建的,使用new操作符,在内部ProtocolManager,而不是通过注释触发器,因此 - 尽管它是注释@Instantiate,但不要参与 iPOJO 服务发布。@Provides


问题:如何正确地(最好是声明式地,使用注释)发布这个以编程方式创建的ProtocolListener服务,而不需要手动潜入原始 OSGi 服务发布(至少在某种工厂之外,也许)?或者,可能,如何重新构建我的系统,以使其更好地配合未说出口的 iPOJO 指南?

0 投票
2 回答
559 浏览

apache-felix - 在 Pax 考试测试中加载 ipojo Maven Bundle

我正在尝试使用 Pax Exam 创建一个测试,其中我为测试加载的一些包依赖于包“ org.apache.felix.ipojo ”。

如果我要在 Pax Exam 配置中省略加载此捆绑包的行,例如:

然后我得到一个错误,表明这个包是一个缺少的依赖项:

但是,如果我添加包含它的行:

我收到一条指示 ClassCastException 的消息,我认为这是由于 ipojo 捆绑包内置到 Felix 中造成的。

我正在使用 Felix 和 JUint4TestRunner 作为跑步者。

如何在没有冲突的情况下访问此依赖项?