Подтвердить что ты не робот

Org.apache.catalina.LifecycleException: не удалось запустить компонент [StandardServer [8005]] Детский контейнер не сработал во время запуска

Я борюсь за последние 6-7 часов, пытаясь выяснить, что пошло не так с моим сервером Apache Tomcat. Во всех моих проектах версия jdk была переведена на 1.6 с 1.8.

Для того, чтобы решить version conflict, я проверил ли же, принимая помощь от скомпилированных версий и JVM из Tomcat версия здесь.

Для нескольких контекстов с одной и той же ошибкой пути я знаю, что мне нужно удалить дубликаты тегов контекста в server.xml. Итак, сначала я проверяю проект "Серверы" (который создается сам, когда вы добавляете Apache Tomcat Server в Eclipse) и не нахожу там ничего. Итак, я углубился в metadata\.plugins\org.eclipse.wst.server.core\tmp3\conf каталога (Eclipse WorkSpace) metadata\.plugins\org.eclipse.wst.server.core\tmp3\conf и удалил дублирующиеся теги контекста там, с помощью, взятой отсюда.

Теперь, когда я создаю новый динамический веб-проект, все работает нормально, и я могу видеть веб-страницу. Но если я пытаюсь получить доступ к любому из HTML, XHTML файлов того старого проекта, в котором был изменен jdk, это org.apache.catalina.LifecycleException продолжает всплывать, и сервер не запускается, и, следовательно, эти повторяющиеся теги Context продолжают строить снова и снова каждый раз, когда я запускаю сервер.

Кажется, что ни один из моих старых проектов веб-приложений сейчас не работает.

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: не удалось запустить компонент [StandardEngine [Catalina].StandardHost [localhost].StandardContext [/EdBurns_ChrisSchalk]]..... SEVERE: во время запуска произошел сбой дочернего контейнера java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: не удалось запустить компонент [StandardEngine [Catalina].StandardHost [localhost]].... Причина: java.lang.RuntimeException: непредвиденный вид значения элемента в аннотации: 0

Как предотвратить повторное создание этих контекстных тегов в server.xml. Во-вторых, как вернуть эти старые веб-проекты в рабочее состояние?

4b9b3361

Ответ 1

Это предотвратит создание нескольких тегов контекста при каждом запросе

1) Остановить сервер
2) Очистить рабочий каталог Tomcat

Screenshot for location:

Ответ 2

У меня была аналогичная ошибка, и я исправил ее следующими шагами: 1. В проекте Servers (который создается при добавлении Apache Tomcat Server в Eclipse), откройте server.xml 2. Прокомментируйте строку

<Context docBase=... />

Ответ 3

Если вы не используете сервлет, основанный на аннотациях, удалите аннотацию @WebServlet ( "/YourServletName" ) из запуска сервлета. Эта аннотация смешивает отображение с web.xml, после удаления этой аннотации сервер Tomcat будет работать правильно.

Ответ 4

Кажется, это проблема локального репозитория Maven. (т.е. папка .m2) может быть связано с повреждением файла .jar

Для меня следующие действия помогли преодолеть эту проблему.

  1. В моей локальной файловой системе я удалил каталог .m2 (локальный репозиторий Maven)

  2. В Eclipse обновил проект (выберите Maven> Обновить проект)

  3. Запустите приложение снова на сервере Tomcat.

Ответ 5

В моем случае файл servlet-api.jar в jre/lib/ext в каталоге jdk конфликтует с файлом servlet-api.jar в tomcat, удаляя файл servlet-api.jar в jre/lib/ext в каталоге jdk может решить проблему.

Ответ 6

Просто убедитесь, что сборка с правильной конфигурацией web.xml. У меня есть обновление web.xml с конфигурацией tomcat, и это сработало для меня. Образец :-

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<display-name>simulator</display-name>
	<description>simulator app</description>


    <!-- File upload  -->
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>
 <!-- excel simulation -->
    <display-name>simulator</display-name>
    <description>simulator app</description>
    <!-- File upload  -->
    <welcome-file-list>
        <welcome-file>InsertPage.html</welcome-file>
    </welcome-file-list>
    <servlet>
        <servlet-name>FileUploadServlet</servlet-name>
        <servlet-class>clari5.excel.FileUploadServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>FileUploadServlet</servlet-name>
        <url-pattern>/excelSimulator/FileUploadServlet</url-pattern>
    </servlet-mapping>



</web-app>

Ответ 7

Дублирование @WebServlet ("/YourServletName") в вашем проекте. пожалуйста, проверьте файлы сервлета.

Ответ 8

Одна из проблем, которая может вызвать это, заключается в том, что вы забыли поместить символ/в аннотацию WebServlet @WebServlet ("/example") @WebServlet ("пример"). Надеюсь, это сработало, у меня сработало.

Ответ 9

Если вы используете следующий стек: Версия сервера: Apache Tomcat/9.0.21 Версия сервлета: 4.0 Версия JSP: 2.3

Затем попробуйте добавить <absolute-ordering/> в ваш файл web.xml. Итак, ваш файл выглядит так:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>spring-mvc-crud-demo</display-name>

  <absolute-ordering />

  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>index.html</welcome-file>
  </welcome-file-list>

  ......

Ответ 10

Прошел через различные ресурсы в сети, но ни один из них не помог мне, я удалил существующий сервер и снова добавил тот же сервер, и теперь он работает нормально, а шаги

Окно → ShowView → Серверы → RightClick → Удалить

а затем добавьте сервер снова, как вы уже добавили.

Ответ 11

Я думаю, что это проблема с версией файла jar. У меня была такая же проблема, и я исправил ее, изменив файл commons-codec-1.6.jar из пути сборки. Раньше я использовал последнюю версию 1.10. Постепенно я уменьшил версии, и версия 1.6 исправила мою проблему.

Ответ 12

Перейдите в диспетчер задач, убейте java-процессы и включите сервер. должен работать нормально.