1

如何在spring DSL中动态设置camelContext id?像这样考虑我的情况,

Bundle A:在我设置 id 属性的地方拥有 camelContext,比如 simple-ctx。这个包有一些在其他包中使用的其他实用程序 bean。

Bundle B:导入我定义骆驼上下文的上下文文件。在 BI 中定义了 B 条特定路线

Bundle C:导入我定义骆驼上下文的上下文文件。在 CI 中定义了 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 。

感谢您的建议和反馈。

4

1 回答 1

3

这是不可能的。是id一个固定值。但是,JMX 命名可以采用动态值,例如计数器、捆绑包 ID 等。

http://camel.apache.org/camel-jmx.html

听起来好像您希望 A 具有前缀是其父级名称的命名?

也不是camelContext在所有捆绑中。您可以routes在 A 中代替,因此这些路由与camelContext来自 B 或 C 的路由相同:http: //camel.apache.org/how-do-i-import-routes-from-other-xml-files.html

于 2016-09-06T07:16:02.713 回答