diff --git a/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java b/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java index 5df95b94fa..47d0d9a27f 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java @@ -620,7 +620,8 @@ public abstract class MessagingGatewaySupport extends AbstractEndpoint sendMessageForReactiveFlow(requestChannel, requestMessage); return buildReplyMono(requestMessage, replyChan, error, originalReplyChannelHeader, - originalErrorChannelHeader); + originalErrorChannelHeader) + .onErrorResume(t -> error ? Mono.error(t) : handleSendError(requestMessage, t)); }); } @@ -670,8 +671,7 @@ public abstract class MessagingGatewaySupport extends AbstractEndpoint .setHeader(MessageHeaders.ERROR_CHANNEL, originalErrorChannelHeader) .build(); } - }) - .onErrorResume(t -> error ? Mono.error(t) : handleSendError(requestMessage, t)); + }); } private Mono> handleSendError(Message requestMessage, Throwable exception) {