Om automatische instantiëring te voorkomen, mag de luisteraar niet worden geannoteerd als @Component
. De configuratie moet de ApplicationContext bereiken, die automatisch kan worden bedraad.
Mijn configuratieklasse ziet er dus als volgt uit:
@Autowired
private AbstractApplicationContext context;
private void registerListeners() {
ProjectsRepositoryListener firstListener = beanFactory.createBean(ProjectsRepositoryListener.class);
context.addApplicationListener(firstListener);
MySecondListener secondListener = beanFactory.createBean(MySecondListener.class);
context.addApplicationListener(secondListener);
}
Merk op dat dit werkt voor elke ApplicationListener
, niet alleen AbstractMongoEventListener
.