【发布时间】:2016-09-01 17:14:39
【问题描述】:
如何在spring DSL中动态设置camelContext id?像这样考虑我的场景,
Bundle A:在我设置 id 属性的地方拥有 camelContext,比如 simple-ctx。这个包还有一些其他的实用程序 bean,它们在其他包中使用。
Bundle B:导入我定义骆驼上下文的上下文文件。在 B 中我定义了 B 特定路线
Bundle C:导入我定义骆驼上下文的上下文文件。在 C 中我定义了 C 特定的路线
现在,bundle B 和 C 依赖于 Bundle A。现在,如果我执行 context-list 命令,它会列出 simple-ctx。这意味着 Bundle B 和 C 具有相同的 camelContext id。 我想实现 id 应该像 simple-ctx-B 和 simple-ctx-C ,而不在 B 或 C 中定义 camelContext。
感谢您的建议和反馈。
【问题讨论】:
-
能否请您提供导入上下文文件的代码示例。据我所知,您只能在 osgi 包之间共享对象,但不能在上下文文件之间共享对象
-
为什么不保留单独的上下文并将所有共享 bean 放入自己的包中?
-
这是我的要求和架构设计。我现在无法更改它,因为对现有服务有巨大影响。这就是想要在运行时修改骆驼上下文 id 的原因。
标签: apache-camel osgi jbossfuse spring-dsl