Comment faire pour résoudre l'Erreur listenerStart lors du déploiement d'applications web Tomcat 5.5?
J'ai déployé un Apache Wicket application web qui utilise Spring et Hibernate pour mon Tomcat 5.5 exemple. Lorsque je navigue à l'Tomcat Manager de l'interface, je vois que la web-application, j'ai déployé n'est pas en cours d'exécution. Lorsque j'appuie sur "Démarrer", j'obtiens le message d'erreur suivant; "FAIL - l'Application au chemin de contexte /spaghetti n'a pas pu démarrer".
Mon catalina.le journal contient les éléments suivants:
Apr 15, 2010 1:51:22 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/var/lib/tomcat5.5/webapps/spaghetti/WEB-INF/lib/jsp-api-6.0.16.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/jsp/JspPage.class
Apr 15, 2010 1:51:22 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/var/lib/tomcat5.5/webapps/spaghetti/WEB-INF/lib/servlet-api-6.0.16.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Apr 15, 2010 1:51:24 AM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Apr 15, 2010 1:51:24 AM org.apache.catalina.core.StandardContext start
SEVERE: Context [/spaghetti] startup failed due to previous errors
Extrait de web.xml:
<auditeur> <listener-class> org.springframework.web.contexte.ContextLoaderListener </listener-class> </auditeur>
Toute aide est grandement appréciée.
- Regardez ceci: blog.trifork.com/2011/03/18/...
Vous devez vous connecter pour publier un commentaire.
Vous devriez pas de serveur spécifique des bibliothèques dans le
/WEB-INF/lib
. Les laisser dans le appserver sa propre bibliothèque. Il ne ferait que conduire à des collisions dans le classpath. Se débarrasser de tous les appserver des bibliothèques spécifiques dans/WEB-INF/lib
(et aussi dansJRE/lib
etJRE/lib/ext
si vous avez placé l'un d'eux il y a).Une cause commune que le serveur d'applications des bibliothèques spécifiques sont inclus dans la webapp de la bibliothèque, c'est que les démarreurs pense que c'est le droit de corriger des erreurs de compilation, entre autres, la
javax.servlet
classes n'étant pas resolveable. Les mettre dans une webapp de la bibliothèque est la mauvaise solution. Vous devriez référence dans le classpath lors de la compilation, c'est à direjavac -cp /path/to/server/lib/servlet.jar
et ainsi de suite, ou si vous utilisez un IDE, vous devez intégrer le serveur dans l'IDE, et de les associer au projet web avec le serveur. L'IDE sera alors automatiquement le serveur des bibliothèques spécifiques dans le classpath (buildpath) de la webapp projet./workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/...
Il a commencé après la mise à niveau à partir de Servlet 2.5 à 3.0, j'ai donc pensé un clic-droit sur le serveur, puis sur "Nettoyer le Répertoire de Travail de Tomcat" doit essuyer. Mais les choses gardé de revenir. Finalement,mvn dependency:tree
a montré que certaines dépendances dont deuxjavax.servlet:servlet-api:jar:2.5
etorg.mortbay.jetty:servlet-api:jar:2.5-20081211
.J'ai trouvé qu'en suivant ces instructions ont aidé à trouver quel était le problème. Pour moi, c'était le tueur, ne sachant pas ce qui était cassé.
http://mythinkpond.wordpress.com/2011/07/01/tomcat-6-infamous-severe-error-listenerstart-message-how-to-debug-this-error/
En citant le lien
catalina.out
alors que la stacktrace a été écrit pourlocalhost-<date>.out
. Donc, assurez-vous de vérifier tous les fichiers de log de tomcat pour stacktraces (peut-être par trouver le pid à l'aide deps aux | grep tomcat
et de la découverte de tomcat ouvrir des fichiers à l'aide delsof -p <pid>
)J'ai rencontré ce message d'erreur lorsque le JDK que j'ai compilées à l'application, en vertu était différent de celui de tomcat JVM. J'ai vérifié que le Tomcat manager était en cours d'exécution de la jvm 1.6.0 mais l'application a été compilée sous java 1.7.0.
Après la mise à jour de Java et de changer JAVA_HOME dans notre script de démarrage (/etc/init.d/tomcat), l'erreur a disparu.
Répondu fournis par Tom Saleeba est très utile.
Aujourd'hui, j'ai aussi été aux prises avec le même message d'erreur
J'ai suivi la suggestion et a ajouté l'exploitation forestière.fichier de propriétés. Et ci-dessous a été ma raison de l'échec:
La cause racine du problème a été un auditeur (Log4jConfigListener) que j'ai ajouté dans la web.xml. Et comme par le lien GRAVE: l'Exception org.springframework.web.util.Log4jConfigListener , cet auditeur ne peut pas être ajoutée à l'intérieur d'une GUERRE qui n'est pas développée.
Il peut être utile pour quelqu'un de savoir que ce qui se passait sur OpenShift JBoss engins.