问题标签 [blueprint-osgi]
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.
activemq - ActiveMQ remote connections refused despite 0.0.0.0 in broker URL
I have an ActiveMQ v5.7.0 broker, running in Karaf v2.3.3, that I want to enable for remote connections. I've set the broker URL to 0.0.0.0:61616, to enable it to listen to network traffic. I've opened the firewall to allow the traffic from the client machines. However, all remote connections are being refused. A quick netstat seems to tell me that the broker isn't listening outside of localhost.
Looking at the broker via Hawtio tells me that the URL looks as it should.
The firewall is definitely OK, as the connections are being refused rather than just being dropped.
The broker is responding correctly to connections from localhost.
This is the sort of error I get from remote connections:-
EDIT: telnet output added
Localhost port 61613
Remote connection port 61613
Localhost connection port 61616 (this one is interesting)
Remote connection port 61616
EDIT: remote server karaf log output added
Here's the broker.xml.
Can anyone tell me what I'm missing?
Thanks,
J.
osgi - 在蓝图中连接原型
与 Spring 一样,blueprint 支持原型范围。但与 Spring 不同的是,我看不到任何有关如何使用它的文档。
在 Spring 中,您可以要求上下文给您一个新的 bean,在 Blueprint 世界中等价物是什么?
java - Apache Aries 和 Glassfish 集成
我正在尝试使用 Glassfish v4 部署 apache aries 博客示例,但出现以下异常:
由于 Glassfish 有自己的 osgi jndi,我不确定如何让 apache aries JNDI 在 glassfish 服务器中工作。
apache-camel - Camel 蓝图中是否有等效的 AntPath 匹配器
在网上找不到任何东西,任何人都知道如何按照以下 spring-camel bean 设置在蓝图中执行等效操作:-
我的理解(对不起,骆驼仍然相当有限)是 AntPathMatcher 是骆驼弹簧的一部分,而不是骆驼蓝图,所以如果我想使用蓝图,就不能这样使用它。
或者有没有更好的方法在 blueprint 中做到这一点?
编辑 我发现存在 camel-core-xml 但不确定如何在其中使用 AntPathMatcher。
apache-camel - cxfrs:server 和 jaxrs:server 之间的区别
我想知道 cxfrs 和 jaxrs 之间的区别。还有在我的蓝图中使用 cxfrs:server 和 jaxrs:server 的区别。
websphere - WAS 8.5 - 蓝图管理的 OSGI 服务是否可以引用声明性服务管理的 OSGI 服务?
我们使用 WebSphere 8.5(NON-Liberty Profile……只是直接的 WAS),我们有一个 Spring 3.2 Web 应用程序,它正在访问一个 OSGI 服务,该服务通过 SCA 服务桥使用蓝图组件模型。我们这样做是因为据我们了解,这是能够从我们当前架构中访问 OSGI 服务层的唯一方法。如果有人可能知道另一种/更好的方法,我也对此全神贯注。
在此蓝图托管服务中,我们希望引用另一个服务。我们希望由声明式服务组件模型管理这个其他服务(以及其中的任何服务引用)。
我的问题是……这可能吗?有谁知道在 WAS 8.5 中混合这两个组件模型是否可以以任何方式、形状或形式进行?
如果可能的话,是否有人能够指出我如何解决这个问题的正确方向?
编辑 - 12 月 5 日
所以我决定采用的方法是首先构建一个小的概念验证应用程序,该应用程序使用三个不同的 OSGI 包,它们都使用蓝图。然后,一旦我完成了这项工作,请使用其中一项蓝图托管服务,并尝试将其转换为 ds 托管服务。
这是我到目前为止所得到的:我已经完成并创建了位于此处的教程。我目前有 CounterApp OSGI 捆绑应用程序,其中包含以下捆绑包作为应用程序内容:
- CounterServiceBundle
- CounterWebBundle
- CounterWorldBundle
如教程中所述,以上所有内容都通过 blueprint.xml 文件使用蓝图组件模型绑定在一起。
所以这一切都分解如下:
在 CounterWebBundle 的 CounterServlet 的 doGet 方法中,我以以下方式使用了 Greet 服务:
此“问候”服务在蓝图 xml 中定义为“GreetBeanService”。现在,在它的实现类中,它引用了另外两个服务,“CounterBean”和“WorldRef”。
这是要澄清的 blueprint.xml 文件:
</blueprint>
所以事情是这样的:
我的目标是使用component.xml文件将“WorldRef”服务转换为 DS 托管服务,并将以下内容添加到Service-Component: OSGi-INF/component.xml
实现类的 MANIFEST.MF 标头中,如果我理解正确,则不是 API 类。
这就是我需要为转换做的所有事情吗?还是我还需要为班级添加激活器?另外,我需要在 API 实现类中添加“激活”和“停用”方法吗?
另外,我知道我必须以某种方式将服务组件运行时包含在一个单独的包中并将其包含在“CounterApp”应用程序中,我该怎么做呢?我是否必须创建一个包含以下捆绑包/jar 的单独捆绑包项目
- org.eclipse.equinox.util
- org.eclipse.equinox.ds
- org.eclipse.osgi.services
然后我将在哪里重新导出所有这些 jar 中的所有导出接口?或者我是否必须定义某种服务来导出暴露 SCR?
编辑 - 12 月 6 日
我继续创建了一个新的 DS OSGI 包/jar,其中包含提供 Equinox DS 实现所需的所有上述 jar 文件,然后在这个新包中传递每个 jar 的导出。然后,我将此 DS 包添加到我的 CounterApp 应用程序中,并将这些 DS 包导出中的每一个导入到包含 WorldRef 服务的包中。
这是我似乎被挂断的地方:
OSGI 框架正在加载包含 WorldRef 服务的包,但该服务未添加到注册表中,这表明未读取定义该服务的 component.xml 文件,这表明 SCR 未运行,因为据我了解,这就是读取该文件的内容。
所以仍然坚持让 SCR 运行的能力。我的最后期限非常紧迫(我知道……谁不是,对吧?
osgi - karaf - 如何使用 websocket jsr JSR-356 或其他 osgi 容器
我想将 websocket 与 apache karaf 或其他 osgi 容器一起使用,例如“service mix, felix, ...”问题是 karaf 2.3 或 3.0 使用最大 8.X 的码头。jsr 356 仅在 jetty 9.X 中实现。如果你有一个非常好的例子。我辞职使用骆驼,但我无法按我的意愿处理会话。
java - 寻找支持会话范围服务的 OSGi 依赖注入框架
这个问题是Spring framework download as OSGi bundles的后续问题。
我正在寻找一个能够执行以下操作的框架:
- 它必须在 OSGi 环境中工作
- bean/services/无论你想怎么称呼它的一些概念
- 此 bean/服务需要能够具有会话范围,最好与 Web 会话相关联
- 通过依赖注入将此bean /服务注入需要它们的组件中(可选但高度赞赏 - 我猜一个可以从上面做这些事情的框架很可能也可以做依赖注入)
- 必须被认为是可靠和稳定的,对未来的支持有良好的前景
最初我正在研究 Eclipse Gemini 蓝图,但是 (a) 我在启动和运行它时遇到了麻烦(请参阅上面的问题)和 (b) 不仅我的问题的答案显示了一些担忧,而且我不太确定我自己不再使用它了。我找不到很多它被广泛使用的参考资料,论坛几乎死了(比如 4 年内 8 页),而且似乎参与的 git 贡献者并不多(整个 2013 年有 23 次提交)。我不想在不到一年的时间里得到一个被认为是废弃软件的框架。
我现在的问题是:是否有任何框架(除了 Eclipse Gemini 之外)能够进行会话范围的 bean 并且最好是依赖注入?我也接受“不”作为答案,因为我开始担心那里真的没有。或者,如果您有充分的论据,您可以说服我重新使用 Eclipse Gemini。
apache-camel - 如果路由抛出异常并且已处理设置为 true,则仅执行 doFinally 中的第一个处理器
我有一个骆驼蓝图定义,其中有两个骆驼上下文,每个上下文都包含一条路线。
调用第一个上下文路由,然后调用第二个上下文的路由。现在,如果在第二条路线中抛出 Exception 并且onException
设置handled=true
,则在第一条路线doFinally
块中,仅调用第一个处理器。
这是我的蓝图定义:
只有<to uri="log:FIRST_FINALLY"/>
被打印出来。我看不到<to uri="log:SECOND_FINALLY"/>
. 我在这里错过了什么吗?任何帮助表示赞赏。
我在 Apache Servicemix 4.5.2 中使用 Camel 2.10.6。
问候多米尼克
websphere - 试图让声明式服务 SCR 在 WebSphere 8.5(非自由)上运行
我有一个运行在 WebSphere v8.5(非自由配置文件)上的蓝图管理的 OSGI 应用程序,其中一个服务 Service_A 引用了另一个服务 Service_B。我希望 Service_B 由声明性服务服务组件运行时而不是蓝图容器管理,但仍然让 Service_A 被蓝图管理。
我相信我在让 SCR 运行时遇到了困难。我不确定我是否正确包含它,或者我如何检查它是否正在运行。我已经用一些打印语句在 Service_B 的实现中定义了“激活”和“停用”,据我了解,当 SCR 找到我理解的服务时,应该调用它们,但我很确定它们是没有被调用,因为断点不会停在那里,我在控制台中看不到任何输出。
到目前为止,我为包含运行时所做的努力如下:
据我了解,以下三个 jars/bundle 就是运行 SCR 所需要的。
- org.eclipse.equinox.ds
- org.eclipse.equinox.util
- org.eclipse.osgi.services
我继续创建了一个包含所有上述 jar 文件的新 OSGI 包/jar,然后在这个新包中传递每个 jar 的导出。然后,我将此 DS 包添加到我的主 OSGI 应用程序中,并将这些 DS 包导出中的每一个导入到包含将由 SCR 管理的服务的包中。
这是我似乎被挂断的地方:
OSGI 框架正在加载包含该服务的包,但该服务未添加到注册表中,这表明未读取定义该服务的 component.xml 文件,这表明 SCR 未运行,因为它据我了解,是读取该文件的内容。
所以仍然坚持让 SCR 运行的能力。非常感谢任何和所有帮助!我的截止日期非常紧迫(我知道......谁错了?:))并且欢迎所有帮助!谢谢!