Ответ 1
Проверьте журналы localhost_yyyy_mm_dd.log
OR localhost.yyyy-mm-dd.log
, которые создает Tomcat, обычно они хранят этот тип информации. Я бы не ожидал, что полный стек будет сброшен до стандартного.
Когда я запускаю Tomcat, я получаю следующую ошибку:
Jun 10, 2010 5:17:25 PM org.apache.catalina.core.StandardContext start
SEVERE: Error filterStart
Jun 10, 2010 5:17:25 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/mywebapplication] startup failed due to previous errors
Кажется странным, что журналы для Tomcat не будут содержать трассировку стека. Есть ли у кого-нибудь предложение о том, как увеличить регистрацию в Tomcat, чтобы получить трассировки стека для таких ошибок?
Проверьте журналы localhost_yyyy_mm_dd.log
OR localhost.yyyy-mm-dd.log
, которые создает Tomcat, обычно они хранят этот тип информации. Я бы не ожидал, что полный стек будет сброшен до стандартного.
создайте файл с именем logging.properties в WEB-INF/классах со следующим содержимым:
org.apache.catalina.core.ContainerBase.[Catalina].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler
Tomcat регистрирует stacktrace, но не всегда ясно, где находятся файлы журнала, когда tomcat запускается из среды IDE. Когда я запускаю его из IntelliJ, CATALINA_BASE
устанавливается в ${home}/.IntelliJIdea10/system/tomcat/Unnamed_r6-idea
, а файлы журнала находятся в [CATALINA_BASE]/logs
.
Чтобы просмотреть журналы, либо найдите файлы журнала, либо отредактируйте [CATALINA_HOME]/conf/logging.properties
, чтобы перенаправить вывод журнала tomcat на консоль. Ниже я добавил второй обработчик конфигурации по умолчанию tomcat:
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
Теперь на выходе IntelliJ появляется полный стек:
Dec 27, 2011 12:02:45 PM org.apache.catalina.core.StandardContext filterStart
SEVERE: Exception starting filter filterChainProxy
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'filterChainProxy' is defined at
org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:529)
. . .
вам нужно скопировать файлы
cp /path/to/solr/example/lib/ext/* /path/to/tomcat/lib
cp /path/to/solr/example/resources/* /path/to/tomcat/lib // or inside extracted solr
а затем перезапустить tomcat
Возможно, ваше приложение скомпилировано с другой JRE, чем Tomcat.
Проверьте java -version
на своем сервере и затем скомпилируйте свой код с той же версией.
У меня была ошибка, потому что стандарт Eclipse JRE был 1,6, а Tomcat - 1,5 - это не сработает.
В CentOS 6 и Solr 4.4.0
Мне пришлось собрать некоторые файлы lib, чтобы получить эту ошибку.
cp ~/solr-4.4.0/example/lib/ext/* /usr/share/tomcat6/lib/
Обычно в локальном хосте есть информация о проблеме. [date].log. Но иногда в этом журнале нет ничего. Это может произойти, если есть запутанная конфигурация проекта (несколько разработчиков работали над ним в течение длительного времени, и каждый добавил что-то от себя). Я столкнулся с этой проблемой БЕЗ информации в журнале. Скорее быстрый и надежный подход:
Попробуйте удалить все, что может вызвать любую проблему из web.xml. Вы даже можете удалить все, кроме тега. Если приложение по-прежнему невозможно развернуть - продолжайте.
Удалите каждый дескриптор *.xml из WEB-INF/classes. Если приложение не может быть развернуто - продолжайте.
Удалите всю конфигурацию ведения журнала, которую вы можете найти в своей войне (logging.properties, log4j.properties). Попробуйте развернуть. На этом этапе у меня есть более информативная ошибка, но развертывание все еще не удалось.
После поиска по этой ошибке я выяснил, что проект включал старую версию xerces, которая столкнулась с версией Tomcat (которая была новее) и не использовала приложение для развертывания. После обновления xerces в веб-приложении все стало хорошо.
Настройка журнала log4j для Tomcat довольно проста. Ниже приведено http://tomcat.apache.org/tomcat-5.5-doc/logging.html:
Создайте файл с именем log4j.properties со следующим содержимым и сохраните его в общих/классах.
log4j.rootLogger=DEBUG, R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/tomcat.log
log4j.appender.R.MaxFileSize=10MB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
Загрузите Log4J (v1.2 или новее) и поместите банку log4j в $CATALINA_HOME/common/lib.
Вы также можете посмотреть http://wiki.apache.org/tomcat/FAQ/Logging
если кто-то получает ошибку, как SEVERE: фильтр ошибокStart 29 апреля 2013 г. 4:49:20 org.apache.catalina.core.StandardContext startInternal SEVERE: запуск Context [/TraceMW] завершился неудачно из-за предыдущих ошибок
то, пожалуйста, проверьте, содержит ли ваш каталог tomcat/lib cors-filter-1.5.jar или нет. если у вас точка у вас превысит ошибку, и приложение ур не будет доступно.
Итак, мне просто удалось скопировать файл jar из другой папки tomcat, и я не получил вышеупомянутую ошибку позже.
У меня тоже была такая же ошибка, и я много боролся в решении этой проблемы. Потратил немного времени на поиск Google и нашел следующее решение, и проблема была решена.
проблема возникла из-за отсутствия библиотек Struts2 в пути развертывания. Большинство из них могут помещать библиотеки для компиляции и, как правило, забывают приложить необходимые библиотеки для выполнения. Поэтому я добавил те же библиотеки в сборку веб-развертывания, и проблема была отключена.
У меня такая же проблема, не удалось запустить приложение, когда оно развернуто в tomcat. Но, как только я скопирую набор инструментов Struts в каталог CATALINA_HOME\lib (Tomcat dir), он будет разрешен. Вам не нужно иметь эти банки в вашем WEB_INF\lib, но вы должны иметь их в своем пути сборки.
Обще-FileUpload-1.2.1.jar
Обще-ю-1.3.2.jar
FreeMarker-2.3.16.jar
Javassist-3.11.0.GA.jar
struts2-конгресс-плагин-2.2.1.jar
struts2-ядро-2.2.1.jar
xwork-ядро-2.2.1.jar
Просто хотел внести свой вклад, потратив последний час на почти идентичную проблему. Мое решение состояло в том, что каким-то образом наши приложения .jar были повреждены, поэтому размещение банки с нашего сервера-разработчика обеспечило исправление.
У меня была аналогичная проблема. Ренато помогал мне. Я использовал более старую версию файлов классов java (в папке WEB-INF/classes), и проблема исчезла. Таким образом, это должно было быть несоответствием версии компилятора.
Это помогло мне: просто удалите все библиотеки, а затем скомпилируйте и запустите. Это подскажет, что ошибки в вашем проекте подтверждают. Перезапустите проект после применения библиотек.
В общем случае версия сервера JDK будет ниже, чем развернутое приложение (построенное с более высокой версией jdk)
Запустить следующую команду, чтобы показать журналы каталогов на терминале ---
sh start-camunda.sh; tail -f server/apache-tomcat-8.0.24/logs/catalina.out