Почему метод ApplicationContext getBean() не может найти компонент ApplicationContext, найденный Autowiring в SpringJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Почему метод ApplicationContext getBean() не может найти компонент ApplicationContext, найденный Autowiring в Spring

Сообщение Anonymous »

В документации Spring говорится, что мы можем автоматически связать контекст с полем, аргументом конструктора или параметром метода с помощью DI (https://docs.spring.io/spring-framework ... ature.html #beans-factory-aware), поэтому я предположил, что это bean-компонент и будет возвращен методом getBean класса ApplicationContext (я знаю, что это было бы совершенно избыточно, но мне стало любопытно, лол), но каждый раз, когда я пытаюсь его получить используя первый метод, он выдает исключения, сообщающие, что компонент не найден, я постараюсь прояснить это на примере:

Код: Выделить всё

@Component
public class MyBean {

//Parameters Injected by Spring
public MyBean(ApplicationContext context){
SaveFileRepository repository = context.getBean(SaveFileRepository.class);//This works as expected and gives no exception
ApplicationContext context2 = context.getBean(AnnotationConfigApplicationContext.class);//This gives the exception, though the context iss autowired by spring in the same constructor the programmer cant get it by the method

}
}
Кто-нибудь знает, в чем причина этого?

Подробнее здесь: https://stackoverflow.com/questions/771 ... ontext-bea
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»