找到Spring上下文是否正确的正确方法

时间:2016-10-06 10:44:55

标签: spring events event-handling lifecycle

在我的spring bean中,我想使用send spring事件功能。问题是如果没有初始化spring上下文,则无法发送事件,并且我的bean由于某些原因可以在发生之前发送事件。

我使用了以下内容:

  1. 实现ApplicationContextAware并使用ConfigurableApplicationContext.isActive() - 这在上下文初始化阶段开始时变为现实
  2. 使用ConfigurableApplicationContext.isRunning() - 这会引发异常IllegalStateException("LifecycleProcessor not initialized...
  3. 侦听ContextRefreshedEvent - 这不起作用,因为这是内部bean,并用作实现BeanFactoryPostProcessor的bean的属性
  4. 实施SmartLifecycle也不起作用,因为内部豆
  5. 那么什么是 EASY 以及确定上下文是否正在运行并且可以发送事件的正确方法?

1 个答案:

答案 0 :(得分:0)

希望在4.1.7版本中已经修复了SPR-13667