问题标签 [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.
java - Osgi - Virgo 3.6 - 加载应用程序上下文
- 步骤 1 根捆绑
我正在创建一个部署在 Virgo Server 3.6 中的 Jar Bundle,Jar 工作正常,
- 第 2 步插件 Jar 包
然后为了测试我的第一个 Bundle,我正在创建另一个 Jar Bundle,即插件 JAR Bundle。并且 Bundle Plugin 工作正常,并成功调用第一个 jar
- 第 3 步 Web 插件 Jar 包
最后,我想创建一个战争包来使用第一个 Jar 包,在阅读了我添加到 web.xml 的文档后,我使用了 MVC Spring,工作正常但不能注入 osgi bean 服务来调用第一个 jar 的方法捆
我认为,问题是 applicationContext.xml 没有加载,我的问题是战争项目有什么问题。
osgi - 无法从 apache karaf 客户端运行命令
我已经在几台 CentOS6.4 机器上下载了 apache karaf2.3.3(在 felix 上)。我只在少数机器上看到这个问题。当我尝试使用以下命令安装功能时
我得到以下堆栈跟踪:
看起来客户端无法连接到 karaf。所有机器上的防火墙都已关闭。任何人都知道为什么这可能会失败?如果在控制台模式下使用 /bin/karaf 运行 karaf 并输入相同的命令,该功能就会顺利安装
osgi - 如何在 Karaf 启动时安装包
我遇到了这篇文章,但它并没有完全回答我的问题。我正在使用蓝图在 Karaf 中设置 H2 数据库,它需要我首先安装 H2 驱动程序和 OSGi 企业包,因为它包含 JDBC 库。
我将蓝图 XML 文件添加到 Karaf 的部署文件夹中,并且在我安装 H2 和企业包之前它一直给出错误消息。理想情况下,我想在蓝图脚本启动之前安装企业和 H2,所以我想以某种方式将它添加到 karaf 的启动过程中,但我不确定如何。
任何见解将不胜感激。
xpath - Camel @XPath 和 @Body 在 bean 调用时被忽略
我正在尝试在拦截器中调用一个bean并使用注释绑定一些参数,但是当调用该方法时,注释似乎被忽略了,而是正文绑定到第一个参数,第二个参数为空。
我已经使用 Blueprint DSL 尝试了相同的 XPath,它工作正常,所以我确定这不是问题。我的方法是这样的: -
我的拦截器是这样的。
当调用拦截器时,我会为第一个日志语句打印一个完整的肥皂信封,而另一个则为 null。
我需要做任何事情来让这个 bean 注释知道吗?从文档看来,我只需要像上面那样添加注释。我不敢相信它只是行不通。
这是在 JBose Fuse 中运行的,所以如果有什么不同的话,那就是骆驼 2.10。
更新
我已经尝试从问题中删除拦截器并仅以简单的路线执行,但它仍然无法正常工作。我是否需要以某种方式将传入的字符串类型转换为 XML,或者它是否需要成为正文中的 JAXB 实体才能使 @XPath 工作?
osgi - 模块化 Spring MVC 应用程序
我想开发具有核心服务和实用程序以及模块化控制器服务堆栈的模块化 Spring MVC 应用程序。我应该使用哪个 OSGi 框架?我找到了 Spring Dynamic Modules,它有据可查,但这是一个死项目,我没有找到足够的关于集成它的继任者 - Blueprint 和 Spring 的参考资料。还是其他?
java - 是否可以使用通过蓝图注入的 OSGi Enterprise 4.x & JPA 2.1 Entity Listener?
我们身处 OSGi 世界。
- JPA 2.1 支持可注入的 EntityListner。
- 并且EclipseLink 支持 JPA 2.1。
- 但是 OSGi Enterprise Spec 4.x 只支持 JPA 2.0。
所以看起来可注入的 EntityListener 在 OSGi 中不起作用,即使 EclipseLink 支持它们。
目前是否可以在 blueprint.xml 中定义 EntityListener 并将它们用于注入?这将允许将 OSGi 服务注入实体侦听器。(目前我们需要使用 FrameworkUtil 进行显式查找来进行查找。)
有没有人这样做成功并且可以分享一些提示,特别是关于使用的捆绑包(版本)?
apache-camel - PaxExam 和 CmPropertyPlaceholder
我正在尝试实施 PaxExam 来测试蓝图骆驼路线:
如果捆绑包部署在 Karaf 中它可以工作,但是当我尝试在 PaxExam 测试中运行它时,它会在初始化 CmPropertyPlaceholder 时失败并出现 NullPointerException:
这是我的 PaxExam 配置方法:
我需要做任何特别的事情才能将 cm:property-placeholder 与 PaxExam 一起使用吗?(删除标签使测试运行良好)
提前谢谢,干杯
apache-camel - Fuse ESB/OSGI/Blueprint 按字母顺序读取配置文件?
我经历了一些相当奇怪的事情,我想知道其他人是否也经历过同样的事情......
我目前正在使用 jboss fuse(以前是 fuse esb)开发一个项目,我们正在为我们的配置文件使用蓝图。我们使用属性占位符,在 src/main/resources/OSGI-INF/blueprint 下有以下文件: blueprint.xml properties.xml
在 blueprint.xml 我们有这样的东西:
然后在 properties.xml 我有这个:
我显然在 MyClass 中有一个用于 prop1(它是一个字符串)的设置器。
但我看到的是,当我部署它时,prop1 设置为“${my.prop}”而不是“true”,即变量永远不会被其定义的值替换!
但是现在如果我调用属性文件 aaa_properties.xml,它就可以工作了!!
这是蓝图容器中的错误吗?有没有其他人经历过同样的行为?
感谢您的反馈意见 :)
JM。
spring - 在 OSGi 中同时使用 Blueprint 和 Spring(不是 spring-dm)
我有一个 Spring3 应用程序,它在启动时需要大约 3 分钟来加载一个大型域模型......当应用程序每隔一段时间部署到生产环境时这很好,但由于停止/启动应用程序。
我做了一些调查,我喜欢使用 OSGi 将我的应用程序分成模块的想法,这样我就可以只部署我的应用程序中正在更改的部分(例如,当我进行更改时不需要部署域模型到持久层);然而,我发现 OSGi 的进入门槛相当高。
是否可以同时使用蓝图来注入模块之间提供的服务(例如,向我的 Web 层公开域模型的实现)并在我的每个模块中继续使用 Spring 框架(而不是 Spring 动态模块)?
osgi - 无法在 karaf 容器中使用带有 ehcache 的两个捆绑包
我正在使用 Karaf(实际上是 Aetos)OSGi 容器。我想要两个使用 ehcache 的包。显然,当第二个包启动其缓存时,第一个包的缓存将停止。
安装第一个时,没有问题。它运行良好。
当我安装第二个时,我得到这样的堆栈跟踪:
然后我更新了第二个包,它启动得很好。但是,当我在第一个包上使用缓存时,缓存开始失败,并显示以下堆栈跟踪:
ehcache 配置文件位于捆绑包中。除了 ehcache 和缓存的名称以及文件本身的名称甚至不同之外,它们是相同的。
我将以下 bean 用作工厂:
这是我使用工厂的 blueprint.xml 文件的摘录:
我在 pom.xml 文件中有这个: