【发布时间】:2019-04-30 07:26:26
【问题描述】:
我有弹簧集成流程。一种用于文件轮询,另一种用于处理文件
流#01
轮询 C:/testing 目录下的文件
文件进入“处理”队列
流程#02(来自“流程”)
Transformer(new FindTheDepartItbelongs()) //basically file has to match to some depoartment
.transform(new FileParserTransformer()
.transformer(new CustomerTransformer()
.handle (o -> {})
问题是如果FindTheDepartItBelongs 找不到部门,那么它必须停止其余的流程并将消息发送到某个错误队列。
如果我从转换器返回 null,它就不起作用。
还有其他方法可以达到同样的效果吗?
【问题讨论】:
-
变形金刚不能返回null;您需要展示完整的流程配置,以便我们帮助您进行错误处理配置。
-
@GaryRussell 我已经有了错误处理程序,但我很想知道是否可以在两者之间停止流程?
-
transformer 不能返回 null,但
.handle()方法可以并且流程停止。但是,它不会进入错误通道;你必须为此抛出一个异常。 -
@GaryRussell 我明白了,伙计。谢谢,如果你有时间可以帮我解决这个问题stackoverflow.com/questions/53521593/…
-
如果你愿意,你可以留下这个答案,我会接受
标签: java spring-integration spring-integration-dsl