From 13399dcd5f727602984ab02881790d6945cd3c2d Mon Sep 17 00:00:00 2001 From: Soby Chacko Date: Tue, 6 Dec 2022 16:14:15 -0500 Subject: [PATCH] Binder instantiation changes - When default binder is provided, consider it while instantiating the binder. This is needed for AOT/Native applications that provide a default binder. Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2569 Resolves #2579 --- .../cloud/stream/binder/DefaultBinderFactory.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/DefaultBinderFactory.java b/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/DefaultBinderFactory.java index b6be30c65..40ca234b4 100644 --- a/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/DefaultBinderFactory.java +++ b/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/DefaultBinderFactory.java @@ -163,7 +163,7 @@ public class DefaultBinderFactory implements BinderFactory, DisposableBean, Appl return this.doGetBinderConventional(name, bindingTargetType); } else { - if (!StringUtils.hasText(name) && this.binderChildContextInitializers.size() == 1) { + if ((!StringUtils.hasText(name) || this.defaultBinder != null) && this.binderChildContextInitializers.size() == 1) { String configurationName = this.binderChildContextInitializers.keySet().iterator().next(); return this.getBinderInstance(configurationName); }