Apache camel CronScheduledOutPolicy未在指定时间启动路由
我创建了一个Apache camel CronScheduledOutPolicy未在指定时间启动路由,apache-camel,quartz-scheduler,Apache Camel,Quartz Scheduler,我创建了一个cronscheduledulepolicy,每天下午15:30启动并启动我的路由,从某个网站获取xml并将其存储在数据库中,如下所示 CronScheduledRoutePolicy startPolicy = new CronScheduledRoutePolicy(); startPolicy.setRouteStartTime("0 30 15 * * ?"); from("direct:quatzRoute") .routePolicy(startPolicy)
cronscheduledulepolicy
,每天下午15:30启动并启动我的路由,从某个网站获取xml并将其存储在数据库中,如下所示
CronScheduledRoutePolicy startPolicy = new CronScheduledRoutePolicy();
startPolicy.setRouteStartTime("0 30 15 * * ?");
from("direct:quatzRoute")
.routePolicy(startPolicy)
.log("Route started")*/
.to("http4://mywebsite/today.xml")
.log("Response ${body}")
.convertBodyTo(String.class).process(new Processor() {
public void process(Exchange e) throws Exception {
log.info("Before Logging the xml");
ExchangeRateBean.writeToDB(e);
log.info("After Logging the xml");
}
})
.log("Xml Stored in DB")
.to("mock:result");
在控制台中,它显示捆绑部署时开始的路由。但是在指定的时间(对于给定当前时间的测试),我的工作没有完成。也没有日志消息
还有什么我需要做的吗???这是一个激活路由的策略,所以传入的消息到direct:quatzRoute在那时起作用 改为使用以下方法之一在特定时间提取数据
是的,例如从属性文件加载属性,然后使用from(“quartz:+PropertyConfig.getQuartzTime())将是一种解决方案