1

有没有办法在 Mule 中配置 Quartz 入站端点以具有多个触发器?假设我想要每天 9:00 举办一个活动,再加上每月第一天凌晨 1:00 举办的活动。

4

3 回答 3

2

以下是你可能为你工作的——

<flow name="MultipleIBEndpoints" doc:name="MultipleIBEndpoints">
    <composite-source doc:name="Composite Source">
        <quartz:inbound-endpoint jobName="QuartzDaily" doc:name="Quartz Daily"
            cronExpression="0 0 9 1/1 * ? *">
            <quartz:event-generator-job>
                <quartz:payload>dummy</quartz:payload>
            </quartz:event-generator-job>
        </quartz:inbound-endpoint>
        <quartz:inbound-endpoint  jobName="QuartzMonthly" doc:name="Quartz Monthly"
            cronExpression="0 0 1 1 1/1 ? *">
            <quartz:event-generator-job>
                <quartz:payload>dummy</quartz:payload>
            </quartz:event-generator-job>
        </quartz:inbound-endpoint>
    </composite-source>
    <logger level="INFO" doc:name="Logger" />
</flow>

上述流程使用复合源范围,它允许您将两个或多个入站端点嵌入到单个消息源中。在 Composite 的情况下,嵌入的构建块实际上是消息源(即入站端点),它们在不同的通道上并行侦听传入消息。每当这些接收者中的任何一个接受消息时,复合作用域都会将其传递给流中的第一个消息处理器,从而触发该流。

于 2014-01-22T04:32:26.510 回答
1

您只需将一个石英端点与所需的石英端点一起使用即可满足您的要求

CRON 表达式0 0 1,21 1 * *

有关更多调整,请参阅以下链接。

Mulesoft 石英参考

维基百科参考

Cron 表达式示例列表

于 2014-01-22T07:07:07.793 回答
0

在这种情况下,您需要配置两个 crontrigger 并将它们添加到调度程序中。请通过下面的链接,我已经描述了整个事情。 配置多个 cron 触发器

希望这会有所帮助。

于 2014-01-22T05:02:34.987 回答