Journaux de démarrage Tomcat – SEVERE: Erreur filterStart Comment obtenir une trace de stack?

Lorsque je lance Tomcat, j’obtiens l’erreur suivante:

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 

Il semble étrange que les journaux de Tomcat n’incluent pas de trace de stack. Quelqu’un at-il une suggestion sur la façon d’augmenter la journalisation dans Tomcat pour obtenir des traces de stack pour des erreurs comme celle-ci?

Vérifiez les journaux localhost_yyyy_mm_dd.log OU localhost.yyyy-mm-dd.log par Tomcat, qui stockent généralement ce type d’informations. Je ne m’attendrais pas à ce que la stack complète soit remplacée par une sortie standard.

créer un fichier nommé logging.properties dans WEB-INF / classes avec le contenu suivant:

 org.apache.catalina.core.ContainerBase.[Catalina].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler 

Tomcat connecte le stacktrace, mais il n’est pas toujours clair où sont les fichiers journaux lorsque tomcat est démarré à partir d’un IDE. Lorsque je le lance à partir d’IntelliJ, CATALINA_BASE est défini sur ${home}/.IntelliJIdea10/system/tomcat/Unnamed_r6-idea et les fichiers journaux se trouvent dans [CATALINA_BASE]/logs .

Pour voir les journaux, localisez les fichiers journaux ou modifiez [CATALINA_HOME]/conf/logging.properties pour diriger la sortie du [CATALINA_HOME]/conf/logging.properties tomcat vers la console. Ci-dessous, j’ai ajouté un second gestionnaire à la configuration tomcat par défaut:

  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 

La stack complète apparaît maintenant dans la sortie 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) . . . 

vous devez copier les fichiers

 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 

puis redémarrez tomcat

Peut-être que votre application est compilée avec un JRE différent de celui de Tomcat.

Vérifiez java -version sur votre serveur, puis comstackz votre code avec la même version. J’ai eu l’erreur parce que mon JRE standard d’Eclipse était 1.6 et Tomcat utilisé 1.5 – ceci ne peut pas fonctionner.

Dans CentOS 6 et Solr 4.4.0

J’ai dû comstackr des fichiers lib pour que cette erreur soit corrigée

 cp ~/solr-4.4.0/example/lib/ext/* /usr/share/tomcat6/lib/ 

Il y a généralement une information sur le problème dans localhost. [Date] .log. Mais parfois, il n’y a rien dans ce journal. Cela peut se produire si la configuration du projet est perturbée (plusieurs développeurs ont travaillé dessus pendant longtemps et chacun a ajouté quelque chose de lui-même). J’ai rencontré ce problème sans aucune information dans le journal. Une approche plutôt rapide et robuste:

  1. Essayez de supprimer tout ce qui peut causer des problèmes sur web.xml. Vous pouvez même tout supprimer sauf tag. Si l’application ne peut toujours pas être déployée, continuez.

  2. Supprimez tous les descripteurs * .xml des classes WEB-INF /. Si l’application ne peut pas être déployée, continuez.

  3. Supprimez toutes les configurations de journalisation que vous pouvez trouver dans votre conflit (logging.properties, log4j.properties). Essayez de déployer A ce stade, j’ai plus d’erreur d’erreur, mais le déploiement a toujours échoué.

Après avoir analysé cette erreur, j’ai découvert que ce projet incluait une ancienne version de xerces, qui était en conflit avec la version de Tomcat (qui était plus récente) et que l’application ne devait pas être déployée. Après la mise à niveau de xerces dans les applications Web, tout s’est bien passé.

Configurer la journalisation log4j pour Tomcat est assez simple. Voici un extrait de http://tomcat.apache.org/tomcat-5.5-doc/logging.html :

  1. Créez un fichier appelé log4j.properties avec le contenu suivant et enregistrez-le dans common / classes.

      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 
  2. Téléchargez Log4J (version 1.2 ou ultérieure) et placez le fichier log4j dans $ CATALINA_HOME / common / lib.

  3. Téléchargez Commons Logging et placez le fichier commons-logging-xyzjar (pas commons-logging-api-xyzjar) dans $ CATALINA_HOME / common / lib avec le fichier log4j.
  4. Démarrer Tomcat

Vous pourriez également vouloir regarder http://wiki.apache.org/tomcat/FAQ/Logging

si quelqu’un reçoit une erreur comme SEVERE: Erreur filterStart 29 avril 2013 16:49:20 org.apache.catalina.core.StandardContext startInternal SEVERE: Contexte [/ TraceMW] le démarrage a échoué en raison d’erreurs précédentes

Ensuite, vérifiez si votre répertoire tomcat / lib contient cors-filter-1.5.jar ou non. Si vous ne parvenez pas à obtenir l’erreur ci-dessus et que votre application ne sera pas disponible.

Donc, j’ai juste réussi à copier le fichier jar à partir d’un autre dossier tomcat et je n’ai pas eu l’erreur mentionnée ci-dessus plus tard.

J’ai aussi eu la même erreur et j’ai eu beaucoup de mal à résoudre ce problème. Nous avons passé un peu de temps à chercher sur Google et avons trouvé la solution suivante et mon problème a été résolu.

le problème était dû à l’absence de bibliothèques Struts2 dans le chemin de déploiement. La plupart des gens peuvent mettre les bibliothèques pour la compilation et ont tendance à oublier de joindre les bibliothèques requirejses pour l’exécution. J’ai donc ajouté les mêmes bibliothèques à l’assembly de déploiement Web et le problème était sur OFF.

J’ai eu le même problème, incapable de démarrer l’application une fois qu’elle est déployée dans tomcat. Mais, une fois que je copie le jeu de jars Struts dans le répertoire CATALINA_HOME \ lib (répertoire Tomcat), il est résolu. Vous n’avez pas besoin d’avoir ces jars dans votre WEB_INF \ lib, mais vous devez les avoir dans votre chemin de construction.

commons-fileupload-1.2.1.jar

commons-io-1.3.2.jar

Freemarker-2.3.16.jar

javassist-3.11.0.GA.jar

struts2-convention-plugin-2.2.1.jar

struts2-core-2.2.1.jar

xwork-core-2.2.1.jar

Je voulais juste consortingbuer après avoir passé la dernière heure sur un problème presque identique. Ma solution était que nos applications .jar étaient corrompues, de sorte que placer le fichier JAR de notre serveur de développement fournissait un correctif.

J’ai eu un problème similaire. Le conseil de Renato a fonctionné pour moi. J’ai utilisé une ancienne version de fichiers de classe Java (sous le dossier WEB-INF / classes) et le problème a disparu. Donc, cela aurait dû être la non-concordance de la version du compilateur.

Cela a fait le tour pour moi: il suffit de supprimer toutes les bibliothèques, puis de les comstackr et de les exécuter. Cela déclencherait des erreurs dans la confirmation de votre projet. Réexécutez le projet après avoir appliqué les bibliothèques.

Généralement, la version du serveur JDK sera inférieure à celle de l’application déployée (construite avec la version jdk supérieure)

Exécuter la commande suivante pour afficher les journaux catalina sur le terminal —

 sh start-camunda.sh; tail -f server/apache-tomcat-8.0.24/logs/catalina.out