Spring XD-处理器中异常的自动确认问题

Spring XD-处理器中异常的自动确认问题,spring,spring-integration,spring-xd,Spring,Spring Integration,Spring Xd,我有包含各种模块的SpringXD流,并为流启用了DLQ,但由于流中http客户端重试场景的需要,我无法删除该流。在其中一个处理器中,我抛出异常,并且不想将此场景中的输出传递给流中的下一个处理器/模块,我可以通过使用过滤器来实现这一点 <filter throw-exception-on-rejection="true" ref="batchDataFilter" method="transform"/> 在这种情况下,我可以实现作为异常不传递到流中的下一个模块,但异常正在执

我有包含各种模块的SpringXD流,并为流启用了DLQ,但由于流中http客户端重试场景的需要,我无法删除该流。在其中一个处理器中,我抛出异常,并且不想将此场景中的输出传递给流中的下一个处理器/模块,我可以通过使用过滤器来实现这一点

<filter throw-exception-on-rejection="true"  ref="batchDataFilter" method="transform"/>

在这种情况下,我可以实现作为异常不传递到流中的下一个模块,但异常正在执行重试,因为配置了DLQ,我想在异常/错误中确认此消息,所以它不应该进行重试,我可以记录此消息

下面是我的Spring文件配置

<chain input-channel="input" output-channel="output" >

<int:transformer>
  <beans:bean class="com.capitalone.batch.parser.BatchInputParser" >
    <beans:property name="batchInputProperties" ref="inputfields"/>
  </beans:bean>

</int:transformer>

             <filter throw-exception-on-rejection="true"  ref="batchDataFilter" method="transform"/>


</chain>


谢谢..

要禁用对特定流模块的重试,并始终拒绝DLQ,请使用部署属性

deploy stream myStream --properties module.foo.consumer.maxAttempts=1,module.foo.consumer.requeue=false

您可以在
servers.yml

中的总线级别设置相同的选项。谢谢它对我起了作用,但消息仍然卡在DLQ中。它没有重试,但消息仍然在DLQ中。我为我的模块添加了属性“module.HeaderReader.consumer.autoBindDLQ=false”,并且它没有发布到DLQ。谢谢