Estou procurando implementar um fluxo de integração com um split/aggregate. Gostaria de capturar lançamentos de exceção por manipuladores e iterar todos os elementos divididos um por um, mesmo se algum elemento falhar. Quando todos os elementos lançam exceção e as exceções são capturadas, o fluxo nunca termina. O que eu perdi, por favor? Como posso alcançar o agregado e o fim deste fluxo?
IntegrationFlow.from(
WebFlux.inboundGateway("/jira/version")
.requestMapping(r -> r.methods(HttpMethod.POST)
.consumes("application/json"))
.requestPayloadType(String.class)
.replyChannel(replyChannel)
.errorChannel(errorChannel)
.mappedRequestHeaders(parameter.getJiraHeaderSignature()))
.handle(versionWebhookHandler)
.split(new VersionIssueSplitter())
.handle(updateVersionHandler, s -> s.advice(advice()))
.aggregate()
.get();
public Advice advice() {
var advice = new ExpressionEvaluatingRequestHandlerAdvice();
advice.setTrapException(true);
return advice;
}