В Java CDI есть отличная функциональность для сбора всех управляемых bean-компонентов, имеющих общий супертип.Скажем, я собираю все управляемые экземпляры MyInterceptor, мне просто нужно написать:
@Inject
@Any
Instance<MyInterceptor> myInterceptors;
Подобную функциональность я смог получить, работая над EJB, хотя решение там было гораздо менее привлекательным (янеобходимо позвонить в BeanManager).
Может ли аналогичная функциональность работать с @ Component, управляемым из контекста Spring?
[Редактировать] Почему не является дубликатом Что такое эквивалент Spring для экземпляра CDI или поставщика Guices
Насколько я понимаю, в приведенном выше вопросе есть скрытое предположение, что у меня есть оба контекста: Spring и CDI, которые могут не соответствоватьбыть всегда (особенно в приложениях Java SE).Кроме того, у меня плохой опыт смешивания контекстов, они часто утверждают, что они совместимы, но это не всегда так.Вы можете попасть в ловушку неожиданных проблем, например: https://blog.akquinet.de/2017/01/04/dont-get-trapped-into-a-memory-leak-using-cdi-instance-injection/