talend - 如何在 Karaf 中为 Talend-ESB 运行时容器设置默认上下文?

标签 talend apache-karaf

我正在努力了解 Talend ESB (SE) 运行时的部署架构。

目前我只有一个容器,一切都在路由的默认上下文中运行。这对于 PoC 和开发非常有用,但是当我们进入测试和生产部署时,我希望为不同的环境(开发/测试/生产等)使用单独的 karaf 容器。

本文 ( https://cleverbuilder.com/articles/runtime-context/ ) 解释了如何在运行时设置现有作业的运行时上下文,但我想设置容器,以便路由使用特定容器的正确上下文自动部署。

我已经搜索了所有属性和 .cfg 文件,但我在任何地方都看不到它。

有什么地方可以为容器整体配置默认上下文或部署上下文,还是我必须部署每个路由然后显式更改上下文?

谢谢!

最佳答案

请注意,这不是我要找的答案,但我找到了一种方法来实现我需要的,而无需在更新之前部署具有错误上下文的路由。

在原始问题中引用的文章中,讨论了更新现有路由上下文的方法。该方法通过 karaf 客户端有效地做的是在 <container>/etc 中创建一个配置文件。称为 <routename>.cfg其中包含一行

context = PROD

假设您已将上下文设置为“PROD”。

为了确保路由在正确的上下文中开始,在将 .kar 文件放入 <container>/deploy 之前你可以创建 <routename>.cfg具有正确上下文设置的文件。当您随后部署路由时,路由将从所需的上下文参数集开始。

好吧 - 它很笨重而且有点冗长,但它确实有效,至少在有人提出更好的方法之前是这样。

关于talend - 如何在 Karaf 中为 Talend-ESB 运行时容器设置默认上下文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49671262/

相关文章:

java - 如何在 TALEND 中划分 tmap 中字段的值

java - 如何在 TALEND 的 tMap 中添加自定义 JAVA 代码

java - 如何将生成的 karaf kar 文件包含在 Maven 程序集中?

java - 如何在单独的 XML 文件中使用 Camel 路由

java - 在 Karaf 的 JAX-RS 包上使用 Spring Security

java - 如何通过 OSGi 蓝图属性占位符和 Java DSL 加载外部属性文件

apache-camel - 塔伦德 ESB : How to call one route from another route?

java - Talend:如何在 tFileOutputExcel 中使用相对路径或如何获取项目目录?

log4j2 - Karaf 4.0.5 与 log4j2 : my bundle log output always in console but should be in file

java - 将字符串字段转换为分隔文件 (.csv)