Spring迭代在分割迭代器

时间:2016-07-29 14:13:52

标签: java spring spring-integration spring-dsl

以下面的场景为例: 我在迭代器上分割了一条消息。如果在迭代元素时在.handle()内抛出异常,则跳过所有剩余元素并获取下一条消息。 我需要抑制任何可能的异常,以便处理迭代器中的所有元素。

因为我使用的是Iterator而不是List,所以我无法使用.aggregate()来解决这个问题。

请问,我该如何设法获得所需的行为......?

  • Spring Boot Starter Integration 1.3.0
  • Spring Integration 4.2.1
  • Java DSL 1.1.1

提前致谢!

1 个答案:

答案 0 :(得分:2)

只需在.channel(c -> c.executor(...))之后放置.split()即可。

在这种情况下,所有邮件都将被并行处理(至少),所有下游错误都将被包装到ErrorMessage并发送到errorChannel(默认情况下)。