Нужна ваша помощь и подсказка. Дело, думаю, в какой-то мелочи, которую я в упор не вижу. Ковыряю потихоньку Spring по лекции Евгения Борисова (https://www.youtube.com/watch?v=BmBr5diz8WA) и столкнулся с такой проблемой (репозиторий с проектом на гитхабе https://github.com/redbeard3/SpringProject/tree/master/src/main) - выполнение кода падает с ошибкой:
апр 20, 2019 6:21:16 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [common_beans.xml]
Exception in thread "main" java.lang.NullPointerException
at redbeard.Runner.main(Runner.java:8)
Process finished with exit code 1
Причем:
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("common_beans.xml");
отрабатывает нормально, бин из common_beans.xml с id='terminatorQuoter' настраивается, то есть в поле repeat бина terminatorQuoter выставляется нужное значение:
Ошибка именно в
context.getBean(TerminatorQuoter.class).sayQuote();
потому что:
context.getBean(TerminatorQuoter.class) выдает null
Однако, если я убираю все, что связано с аннотацией InjectRandomInt, то есть ее вообще не использую, и в методе sayQuote() просто вывожу сообщение:
System.out.println(message);
то все работает. Подскажите, где что упустил. Хотя лекцию несколько раз пересмотрел, тщательно выверил все, что сделал.
InjectRandomIntAnnotationBeanPostProcessor в методе postProcessAfterInitialization возвращает null - замените на o. А вообще, насколько помню, Евгений как раз хотел показать почему надо вытаскивать бины по интерфейсу, а не по классу. Потому что из BeanPostProcessor класс может вернуться совсем другой, но реализующий тот же интерфейс.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Хотите улучшить этот вопрос? Переформулируйте вопрос, чтобы он соответствовал тематике «Stack Overflow на русском»
Хочу реализовать передачу видео по UDP(тут, очевидно, только получение картинки)Строка №3 преобразует картинку очень медленно
Цель сделать переход между окнами с общим элементом (изображением)Нужно из окна А перейти в окно B с общим изображением (изображение ниже)