我对 Quartz 触发的 cron 路由有一个奇怪的行为。每当我定义一个每小时的 cron 作业时,一切正常。
<route id="kunden.xml.generate.quartz">
<from uri="quartz://kunden.xml.generate.quartz?cron=0+0+0/1+*+*+?"/>
<bean ref="kundenXmlExportDataBuilderService" method="generateKundenXmls"/>
</route>
我的意思是调用generateKundenXmls方法。但是,如果我更改 cron 表达式以便在第 35 分钟的第 2 小时运行它,则 cron 触发器会触发,但不会调用该方法。
<route id="kunden.xml.generate.quartz">
<from uri="quartz://kunden.xml.generate.quartz?cron=0+35+0/2+*+*+?"/>
<bean ref="kundenXmlExportDataBuilderService" method="generateKundenXmls"/>
</route>
我想我已经找到了该方法没有被调用的原因,但我不知道出了什么问题。Camel 使用RoundRobinLoadBalancer来选择处理器。它调用getProcessors()但它返回一个空列表,因此不调用我的 Spring bean。
有谁知道这种行为并且可以给我一个提示?谢谢你。