在我的spring bean中,我想使用send spring事件功能。问题是如果没有初始化spring上下文,则无法发送事件,并且我的bean由于某些原因可以在发生之前发送事件。
我使用了以下内容:
ApplicationContextAware
并使用ConfigurableApplicationContext.isActive()
- 这在上下文初始化阶段开始时变为现实ConfigurableApplicationContext.isRunning()
- 这会引发异常IllegalStateException("LifecycleProcessor not initialized...
ContextRefreshedEvent
- 这不起作用,因为这是内部bean,并用作实现BeanFactoryPostProcessor
的bean的属性SmartLifecycle
也不起作用,因为内部豆那么什么是 EASY 以及确定上下文是否正在运行并且可以发送事件的正确方法?