首页 > 解决方案 > 每次部署能够启动多个骆驼上下文

问题描述

我们正在将我们的应用程序从 Camel 2.x 迁移到 3.x(2.20.2 到 3.11.2)。我们正在使用Spring XML创建骆驼路线。有 2 个 XML 文件,每个文件都定义了一个骆驼上下文。我们正在使用 spring 引导这些骆驼上下文(见下面的截图)。

引导骆驼上下文

根据 Camel 2.x 到 3.x 迁移指南,每个部署只支持一个骆驼上下文,但是当我在 tomcat 中部署我的应用程序时,它会启动两个骆驼上下文中存在的所有路由。当骆驼文档说每个部署只支持一个骆驼上下文时,这实际上意味着什么?

参考:

标签: javaspringtomcatapache-camelopenjdk-11

解决方案


我怀疑(从未尝试过)智能骆驼只是将您的所有路线放在默认上下文中。

您可以使用getRoutes()Camel 上下文或调试会话中的方法进行检查。

关键问题是:为什么要在 Camel 2 应用程序中创建多个上下文?


推荐阅读