diff --git a/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java b/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java index bb60ddc64..035ec8d35 100644 --- a/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java +++ b/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java @@ -222,6 +222,9 @@ public abstract class AbstractMessageChannelBinder binderTypes = binderTypeRegistry.getAll(); + if (binderTypes.entrySet().size() > 1 && getBindingServiceProperties().getDefaultBinder() != null) { + return getBindingServiceProperties().getDefaultBinder(); + } Assert.isTrue(binderTypes.entrySet().size() == 1, "More than one binder types found, but no binder specified on the binding"); return binderTypes.keySet().iterator().next(); } @@ -232,6 +235,9 @@ public abstract class AbstractMessageChannelBinder