Fix NPE for component name after FactoryBeans
SO: https://stackoverflow.com/questions/62190244/spring-integration-upgrade-from-5-2-x-to-5-3-problem When the component is populated to the application context via `FactoryBean`, all its `BeanFactory` callbacks should be propagated from that `FactoryBean` - only lifecycle control for this component we have through its `FactoryBean` **Cherry-pick to 5.3.x**
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2019 the original author or authors.
|
||||
* Copyright 2002-2020 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -204,7 +204,7 @@ public abstract class AbstractSimpleMessageHandlerFactoryBean<H extends MessageH
|
||||
getBeanFactory(),
|
||||
factory -> ((BeanFactoryAware) this.handler).setBeanFactory(factory))
|
||||
.acceptIfCondition(this.handler instanceof BeanNameAware && this.beanName != null, this.beanName,
|
||||
namne -> ((BeanNameAware) this.handler).setBeanName(this.beanName))
|
||||
name -> ((BeanNameAware) this.handler).setBeanName(this.beanName))
|
||||
.acceptIfCondition(this.handler instanceof ApplicationEventPublisherAware
|
||||
&& this.applicationEventPublisher != null,
|
||||
this.applicationEventPublisher,
|
||||
|
||||
Reference in New Issue
Block a user