From 6c5c4ef710bcb35af28e79ff089bceba4a97ef30 Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Thu, 28 Feb 2019 16:35:27 +0100 Subject: [PATCH] GH-1621 Ensured BF is injected in MessageSource if applicable Resolves #1621 --- .../cloud/stream/binder/AbstractMessageChannelBinder.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java b/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java index 706bca020..878672061 100644 --- a/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java +++ b/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binder/AbstractMessageChannelBinder.java @@ -26,6 +26,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.logging.Log; import org.reactivestreams.Publisher; +import org.springframework.beans.factory.BeanFactoryAware; import org.springframework.beans.factory.DisposableBean; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; @@ -439,7 +440,12 @@ public abstract class AbstractMessageChannelBinder messageSource = resources.getSource(); + if (messageSource instanceof BeanFactoryAware) { +// ((BeanFactoryAware)messageSource).setBeanFactory(getApplicationContext().getBeanFactory()); + } + bindingTarget.setSource(messageSource); if (resources.getErrorInfrastructure() != null) { if (resources.getErrorInfrastructure().getErrorChannel() != null) { bindingTarget.setErrorChannel(