50 votes

Org.apache.catalina.core.StandardContext startInternal GRAVE : Erreur listenerStart

Je suis en train d'essayer de démarrer mon application web sur Tomcat 7, mais chaque fois que je clique sur le bouton de démarrage, j'obtiens cette erreur :

ÉCHEC - L'application au chemin de contexte /Web n'a pas pu démarrer

et les lignes suivantes sont ajoutées au fichier catalina.log:

Feb 08, 2012 7:21:01 PM org.apache.catalina.core.StandardContext startInternal GRAVE: L'écouteur d'erreur de démarrage Feb 08, 2012 7:21:01 PM org.apache.catalina.core.StandardContext startInternal GRAVE: Le contexte [/Web] n'a pas pu démarrer en raison d'erreurs précédentes

Comment cela est-il causé et comment puis-je le résoudre ?

2 votes

Quels sont les erreurs précédentes : démarrage échoué en raison des erreurs précédentes

1 votes

@Mike: ils ne sont pas toujours visibles dans la console de l'IDE/le fichier journal. Je ne suis pas sûr de la raison, il semble que cela dépende d'une combinaison de certaines versions d'Eclipse, de certains plugins de serveur et de certaines versions de Tomcat.

102voto

RenRen Points 575

J'avais un problème similaire. Le catalina.out a enregistré ce message dans le journal

17 avr. 2013 17:14:46 org.apache.catalina.core.StandardContext start SEVERE: Error listenerStart

Vérifiez le fichier localhost.log dans le répertoire de logs de tomcat (dans le même répertoire que catalina.out), pour voir l'exception qui a provoqué cette erreur.

7 votes

Dans mon cas, c'était plus comme localhost.2013-06-06.log, donc le visualiseur de journal par défaut dans IDEA n'a pas montré quel était le problème.

0 votes

Votre réponse a aidé à déboguer davantage. Merci!

12voto

BalusC Points 498232

GRAVE : Erreur listenerStart

Cela se résume à un ServletContextListener qui est enregistré soit par l'annotation @WebListener sur la classe, soit par une déclaration dans web.xml, a lancé une exception non gérée à l'intérieur de la méthode contextInitialized(). Cela est généralement causé par une erreur du développeur (un bug) et doit être corrigé. Par exemple, un NullPointerException.

L'exception complète devrait être visible dans le journal de démarrage spécifique à l'application Web ainsi que dans la console de l'IDE, avant la ligne particulière que vous avez copiée. S'il n'y en a pas et que vous ne pouvez toujours pas comprendre la cause de l'exception en regardant simplement le code, mettez l'intégralité du code contextInitialized() dans un bloc try-catch dans lequel vous enregistrez l'exception dans une sortie fiable, puis l'interprétez et corrigez-la en conséquence.

1 votes

Je rencontre exactement le même problème, pourriez-vous s'il vous plaît fournir un peu plus d'informations que je pourrais attraper dans le contextInitialized(), car le journal ne donne qu'un message vague que je ne peux pas interpréter en tant que programmeur. En information supplémentaire, ce problème est survenu après l'obfuscation avec ProGuard, j'ai veillé à mettre à jour les fichiers web.xml et applicationContext.xml ainsi que les autres fichiers de configuration.

4voto

MohdAdnan Points 733

Pour Intellij Idea parfois le fichier localhost.log est généré à différents emplacements. Par exemple, vous pouvez le trouver à homedirectory\.IntelliJIdea14\system\tomcat.

Si vous utilisez spring, alors démarrez votre serveur en mode débogage et placez un point d'arrêt dans le bloc catch de la méthode refresh() de la classe org.springframework.context.support.AbstractApplicationContext. Si la création du bean échoue, vous pourrez voir l'exception.

2voto

JVerstry Points 12414

J'ai rencontré exactement le même problème dans une application web Spring. En fait, j'avais supprimé spring-security en commentant l'annotation de configuration :

// @ImportResource({"/WEB-INF/spring-security.xml"})

mais j'avais oublié de supprimer les filtres correspondants dans web.xml :

    springSecurityFilterChain
    org.springframework.web.filter.DelegatingFilterProxy

    springSecurityFilterChain
    /*

Commenter les filtres a résolu le problème.

1voto

mugume david Points 306

Cela peut être dû à un certain nombre de raisons se produisant lors de la configuration de l'auditeur. Le meilleur moyen est de journaliser et de voir l'erreur réelle. Vous pouvez le faire en ajoutant un fichier logging.properties à la racine de votre classpath avec le contenu suivant :

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X