Apache Camel:在一条路线上管理多个石英?
Apache Camel: manage several quartz in one route?
我有很多 quartz 来安排任务,例如(ping、电子邮件等)。是否可以在 Apache Camel 的一条路线中管理许多石英,或者我必须为每个石英创建路线?
错误:
Caused by: org.apache.camel.FailedToStartRouteException: Failed to start route route9 because of Multiple consumers for the same endpoint is not allowed: quartz://myTimer?cron=0+0/1+*+*+*+?+*
代码:
@Component
public class TimingRoute extends RouteBuilder {
static final Logger LOGGER = LoggerFactory.getLogger(TimingRoute.class);
@Override
public void configure() throws Exception {
// Every 3 minutes: 0+0/3+*+*+*+?+*
// Every 10 seconds: 0/10+*+*+*+*+?+*
from("quartz://myTimer?cron=0+0/1+*+*+*+?+*") //
.setBody().simple("Current time is " + LocalDateTime.now()) //
.log("${body}").to("direct:processPollingEmail");
from("quartz://myTimer?cron=0+0/1+*+*+*+?+*") //
.setBody().simple("Current time is " + LocalDateTime.now()) //
.log("${body}").to("direct:processPing");
}
}
您在那里所做的已经是“为每个石英创建路线”。
我相信您收到此错误的唯一原因是您为两个石英端点提供了相同的 ID。尝试将它们命名为“myTimer”和“myTimer2”(或任何更有意义的名称,如“emailTimer”和“pingTimer”),你应该没问题。
我有很多 quartz 来安排任务,例如(ping、电子邮件等)。是否可以在 Apache Camel 的一条路线中管理许多石英,或者我必须为每个石英创建路线?
错误:
Caused by: org.apache.camel.FailedToStartRouteException: Failed to start route route9 because of Multiple consumers for the same endpoint is not allowed: quartz://myTimer?cron=0+0/1+*+*+*+?+*
代码:
@Component
public class TimingRoute extends RouteBuilder {
static final Logger LOGGER = LoggerFactory.getLogger(TimingRoute.class);
@Override
public void configure() throws Exception {
// Every 3 minutes: 0+0/3+*+*+*+?+*
// Every 10 seconds: 0/10+*+*+*+*+?+*
from("quartz://myTimer?cron=0+0/1+*+*+*+?+*") //
.setBody().simple("Current time is " + LocalDateTime.now()) //
.log("${body}").to("direct:processPollingEmail");
from("quartz://myTimer?cron=0+0/1+*+*+*+?+*") //
.setBody().simple("Current time is " + LocalDateTime.now()) //
.log("${body}").to("direct:processPing");
}
}
您在那里所做的已经是“为每个石英创建路线”。 我相信您收到此错误的唯一原因是您为两个石英端点提供了相同的 ID。尝试将它们命名为“myTimer”和“myTimer2”(或任何更有意义的名称,如“emailTimer”和“pingTimer”),你应该没问题。