Spring boot Рассмотрите возможность определения bean-компонента с именем servletContext в вашей конфигурации. - PullRequest
0 голосов
/ 11 марта 2019

У меня есть проект с несколькими модулями, и это проект tomcat. Мне нужно преобразовать его в весенний загрузочный проект.

Вот XML-файл со следующим бином: Я использовал @ImportResource ("classpath: xxx.xml").

Здесь выдает исключение:


Приложение не удалось запустить


Описание:

Параметру 0 конструктора в xxxService требовался компонент с именем 'servletContext', который не был найден.

Действие:

Подумайте об определении bean-компонента servletContext в вашей конфигурации.

Я понятия не имею об этой проблеме почти три дня. Пожалуйста, помогите мне, если у вас есть какие-либо переживания по этому поводу, большое спасибо!

Ответы [ 2 ]

0 голосов
/ 11 марта 2019

Интеграция CometD с Spring Boot документирована здесь: https://docs.cometd.org/current/reference/#_java_server_services_integration_spring_boot.

Вы можете найти полностью рабочий пример здесь: https://github.com/cometd/cometd/blob/4.0.3/cometd-java/cometd-java-examples/cometd-java-examples-springboot/src/main/java/org/cometd/examples/spring/boot/CometDApplication.java.

0 голосов
/ 11 марта 2019

Просто внедрите ServletContextAware интерфейс вместо прямой автоматической проводки ServletContext

@Service
public class DummyService implements ServletContextAware {

    ServletContext servletContext;

    @Override
    public void setServletContext(ServletContext servletContext) {
        this.servletContext = servletContext;
    }
}

...