Как исправить «Ошибка создания бина с именем» - PullRequest
0 голосов
/ 28 мая 2019

Мой сайт работает / работал просто отлично.Но я вынужден обновить ОС серверов, на которых он работает, потому что более новая версия программного обеспечения, которое мне нужно обновить, не будет работать на старой ОС.Итак, теперь я нахожусь в аду зависимости.

Итак, на тестовом сервере я обновил ОС с Ubuntu 14.04 до 18.04.1.Я также был вынужден использовать более позднюю версию Java:

echo $JAVA_HOME
/usr/lib/jvm/java-7-oracle

до

echo $JAVA_HOME
/usr/lib/jvm/java-11-openjdk-amd64/

и версию Tomcat с 7 до 8.

Повозившисьнемного (я начал это в январе, но только что смог вернуться к нему, так что я не могу вспомнить, что именно, хотя могу искать в истории подсказки, если требуется), я могу построить свое приложение ОК, но онотерпит неудачу в последнем препятствии:

BUILD SUCCESSFUL Общее время: 19 секунд Использование CATALINA_BASE:
/ var / lib / tomcat8 Использование CATALINA_HOME: / usr / share / tomcat8 Использование CATALINA_TMPDIR: / var / lib/ tomcat8 / temp Использование JRE_HOME:
/ usr / lib / jvm / java-11-openjdk-amd64 / Использование CLASSPATH:
/usr/share/tomcat8/bin/bootstrap.jar:/usr/share/tomcat8/bin/tomcat-juli.jar Использование CATALINA_PID: /root/catalina.pid Tomcat запущен.--2019-05-28 16: 10: 16-- http://localhost:8080/ Разрешение localhost (localhost) ... 127.0.0.1 Подключение к localhost (localhost) | 127.0.0.1 |: 8080 ... подключено.HTTP-запрос отправлен, ожидая ответа ... 404 2019-05-28 16:10:16 ОШИБКА 404: (без описания).

Дальнейшие исследования показывают:

less /var/log/tomcat8/catalina.out

2019-05-28 16: 10: 06.418 UTC [localhost-startStop-1] ОШИБКА org.springframework.web.context.ContextLoader - сбой инициализации контекста org.springframework.beans.factory.BeanCreationException: ошибка создания бина с именем'embedController', определенный в ресурсе ServletContext [/WEB-INF/playground-servlet.xml]: Невозможно разрешить ссылку на bean-компонент homeController, пока задается свойство bean-компонента homeController;вложенное исключение: org.springframework.beans.factory.BeanCreationException: ошибка создания бина с именем 'homeController', определенного в ресурсе ServletContext [/WEB-INF/playground-servlet.xml]: невозможно решить ссылку на бин 'execService' при установке бинасвойство execService;вложенное исключение: org.springframework.beans.factory.BeanCreationException: ошибка создания бина с именем execService: сбой вызова метода init;Вложенное исключение - javax.ws.rs.ProcessingException: java.net.ConnectException: соединение отклонено (соединение отклонено) в org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference (BeanDefinitionValueResolver.java: -32-3.2.8.RELEASE.jar: 3.2.8.RELEASE]

Теперь должно быть совершенно ясно, что я понятия не имею, что я делаю.Я провел весь день, занимаясь поиском и поиском ответов на вопросы о переполнении стека, но ничто не кажется уместным.

1 Ответ

1 голос
/ 28 мая 2019

эта ошибка исходит от Spring. Для поддержки Java 11 вам также необходимо обновить Spring до последней версии 5.x (в настоящее время 5.2.x).

Вы можете столкнуться с различными проблемами совместимости при обновлении более старой среды до Java 11. Если вам абсолютно не нужно обновляться, вы можете рассмотреть возможность использования предыдущей версии. Java 8 все еще поддерживается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...