0

我有一个石英调度程序,如下所示。

<quartz:inbound-endpoint jobName="retryJob" repeatInterval="5000" cronExpression="0 0/1 * * * ?">
    <quartz:endpoint-polling-job>
        <quartz:job-endpoint ref="retryQueue"/>
    </quartz:endpoint-polling-job>
</quartz:inbound-endpoint>
<flow-ref name="callMySubFlow" />
<choice-exception-strategy>
  <catch-exception-strategy when="groovy:message.getInvocationProperty('next') == 'DONE'">
      <logger level="INFO" message="DONE"/>
  </catch-exception-strategy>
  <rollback-exception-strategy>
<on-redelivery-attempts-exceeded>
        <logger level="INFO" message="Redelivery Exceeded. Done with retries."/>
</on-redelivery-attempts-exceeded>
  </rollback-exception-strategy>
</choice-exception-strategy>

<jms:connector name="queueConnectorU" connectionFactory-ref="MQConnectionFactoryU" specification="1.1" username="me" password="p" numberOfConsumers="5" maxRedelivery="3"/>

<jms:endpoint name="retryQueue" queue="retryQ" connector-ref="queueConnectorU">
    <ee:multi-transaction action="ALWAYS_BEGIN" />
</jms:endpoint>

我在子流中有一个故意的服务未找到异常,并希望消息被重试 3 次并提交,但消息永远不会从队列中删除......无限循环。

配置有什么问题吗?

4

0 回答 0