java - 如何在Camel 3.x中获取RouteDefinition(从2.x迁移到3.x)

标签 java spring-boot apache-camel migration

我将camel-parent从2.x升级到3.x。我在代码中有这样的用途:

 exchange.getContext()
                .getRoute(exchange.getFromRouteId())
                .getRouteContext()
                .getRoute()
                .stop();
    

现在

 exchange.getContext()
                .getRoute(exchange.getFromRouteId())
                .getRouteContext()

给了我们一个接口(interface),我们无法访问org.apache.camel.model.RouteDefinition,而是得到 我无法在其上执行 stop 方法。你能告诉我如何到达此 RouteDefinition 以便我可以在其上执行 stop 方法吗?

最佳答案

新的方法(在 Camel 3 中)是使用 RouteController,例如:

camelContext.getRouteController().suspendRoute("my-route-id");

关于java - 如何在Camel 3.x中获取RouteDefinition(从2.x迁移到3.x),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70152683/

相关文章:

java - 在运行时访问strings.xml进行解析

java - 需要一种以编程方式检查 Windows 服务状态的方法

java - ShowCaseView 内存不足错误

java - 在 REST 响应中发送图像时请求 header 太大

spring-boot - Heroku Spring application.properties 文件

java - 每个流程实例的唯一日志文件

spring-boot - 如何将 Redis 连接到 Spring Boot?

java - 如何使用 Camel 将大文件发送到ActiveMQ

java - Apache Camel http 到 http 路由以及响应转换

http - Apache Camel - 从 jms 到 http