首页 > 解决方案 > 打破 Transformer 流程​​ Spring 集成

问题描述

我有弹簧集成流程。一种用于文件轮询器,另一种用于处理文件

流#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 它不起作用。

有没有其他方法可以达到同样的效果?

标签: javaspring-integrationspring-integration-dsl

解决方案


转换器不能返回null,但.handle()方法可以,流程就停止了。但是,它不会进入错误通道;你必须为此抛出一个异常。


推荐阅读