2010-05-17 7 views
2

J'exécute une application Web en utilisant Tomcat et Java Servlets, JSP, etc.problème servlet Tomcat api.jar

Je suis conscient que pour pouvoir utiliser Servlets, il dépend de la Servlet-api.jar fichier. Initialement, j'ai placé ce fichier jar dans le répertoire

WEB-INF/lib/
.

Cela a fonctionné bien pour moi pendant des mois pendant la phase de développement. Lorsque nous avons mis l'application sur l'espace serveur que nous utilisons, nous avons commencé à voir des problèmes wierd apparaissant dans le fichier Catalina.out nous disant qu'il y avait des problèmes de dépendance avec le fichier servlet-api.jar. Je suis conscient que tomcat a ce fichier jar dans son conteneur et que je devrais le supprimer du répertoire

WEB-INF/lib/
. J'ai essayé ceci et cela ne fonctionne pas.

Que dois-je faire lorsque je supprime ce fichier jar des fichiers locaux et que je le laisse dépendre du fichier tomcats servlet-api.jar.

EDIT: Ceci est le message exact extrait de mon fichier Catalina.out que j'ai reçu. J'ai ajouté le JAR externe au chemin de la classe, et cela a fonctionné, mais je reçois ce problème.

May 17, 2010 12:33:31 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/home/weremo/appservers/apache-tomcat-6.0.26/webapps/WMA-Test/WEB-
INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2.
Offending class: javax/servlet/Servlet.class
+0

duplication possible de [Erreur: Pot de servlet non chargé ... Classe en infraction: javax/servlet/Servlet.class] (http://stackoverflow.com/questions/1993493/error-servlet-jar-not-loaded- offender-class-javax-servlet-servlet-class) – Raedwald

Répondre

7

Servlet-api.jar est fourni par défaut par l'environnement de conteneur. Vous ne devriez donc pas le mettre dans votre dossier WEB-INF/LIB lorsque vous déployez votre application. Cependant, il est requis pour compiler vos servlets. Dans le cas où vous utilisez Eclipse comme IDE, placez-le dans votre chemin de classe en utilisant l'option Ajouter des fichiers JAR externes.

+2

Dans Eclipse, il est préférable d'intégrer le serveur dans la vue * Servers * et de l'associer au * Dynamic Web Project *. De cette façon, les bibliothèques du serveur seront automagiquement prises dans le buildpath du projet. – BalusC

+0

Je vais essayer ceci et poster une mise à jour, merci à vous deux! – TheJediCowboy

+0

Que faites-vous si vous n'utilisez pas Eclipse? Comment devrais-je modifier le script ant? – PJT

Questions connexes