IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tomcat et TomEE Java Discussion :

[tomcat] - NoClassDefFoundError:


Sujet :

Tomcat et TomEE Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 27
    Par défaut [tomcat] - NoClassDefFoundError:
    bonjour,
    en testant une servlet j'ai ce message d'erreur au démarrage mais je seche un peu! qqun aurait une idée ?

    merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    javax.servlet.ServletException: Erreur d'allocation à une instance de servlet
    	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    	org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
    	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    	org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
    	org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
    	java.lang.Thread.run(Thread.java:534)
     
     
    cause mère 
     
    java.lang.NoClassDefFoundError: Illegal name: test/TestInitialisation
    	java.lang.ClassLoader.defineClass(ClassLoader.java:538)
    	java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
    	org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1634)
    	org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:860)
    	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1307)
    	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)
    	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    	org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
    	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    	org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
    	org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
    	java.lang.Thread.run(Thread.java:534)
     
     
    note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/5.0.27.

  2. #2
    Membre éprouvé Avatar de XristofGreek
    Inscrit en
    Août 2004
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 164
    Par défaut
    et je suppose que test/TestInitialisation.class existe ?
    sinon verifie ton classpath.

  3. #3
    Membre émérite Avatar de Spoutnik
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 672
    Par défaut
    salut,

    et je suppose que test/TestInitialisation.class existe
    vi, la classe existe!

    le plus surprenant, c que le code installer sur un serveur en localhost (5.0.19) marche sans pb, par contre deployee par un .war sur un autre(5.0.27), ca marche plus...

    J utilise eclipse comme IDE, et j ai verifie que le DevClassLoader pointe bien vers le repertoire de classe...

    (c pas le meme nom, mais c normal, c le collegue qui a posté )

    merci de l aide!!

  4. #4
    Membre éprouvé Avatar de XristofGreek
    Inscrit en
    Août 2004
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 164
    Par défaut
    ça peut paraitre con mais essaye de renommer ta classe avec un autre nom cat TestInitialisation est peut-être un mot clé.

  5. #5
    Membre émérite
    Avatar de RanDomX
    Profil pro
    sans
    Inscrit en
    Mars 2003
    Messages
    579
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Mars 2003
    Messages : 579
    Par défaut
    es tu sur que la class est dans le classpath ?

  6. #6
    Membre émérite Avatar de Spoutnik
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 672
    Par défaut
    euh, j avoue que je ne sais pas, mais je suppose que oui pour 3 raisons :

    1) la meme archive .war se deploie correctement et l appli fonctionne sur mon serveur en local, mais pas sur le serveur de prod
    2) d apres le site de tomcat (si j ai bien lu) il y a un classloader par default sur tous les WEB-INF/classes des appli deployees dans TOMCAT_HOME/webapps
    3) dans eclipse, j ai defini le classloader sur le repertoires de classes....

    mais je suis d accord, ca marche quand meme pas :/ ... et ca pu le classpath mal defini...et je sais pas comment le verifier/modifier (desole, l habitude des IDE )

  7. #7
    Membre expérimenté
    Inscrit en
    Juillet 2004
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 152
    Par défaut
    1ere chose : le nom de ta classe est effectivement illegal (il est donc normal qu'une Exception soit levée)
    Citation Envoyé par Sun, dans les javadocs,
    protected final Class defineClass(String name,byte[] b,int off,nt len,ProtectionDomain protectionDomain) throws ClassFormatError
    [...]
    Parameters:
    name - The expected name of the class, or null if not known, using '.' and not '/' as the separator and without a trailing ".class" suffix.
    [...]

    2eme chose : Pourquoi ca marche sur une machine et pas sur l'autre ?
    Il semble qu'un bug ait laissé passer les noms contenant des slashs jusqu'a la version 1.4.2_04 ou 1.4.2_05 (cf le bug 4817264 dans la Bug Database)


    Ce que je ferais donc :
    1 - verifier les versions du JDK sur ta machine et sur ton serveur de prod.
    2 - chercher la raison de la presence de slashs dans le noms de ta classe


    En esperant que ca aide...

  8. #8
    Membre émérite Avatar de Spoutnik
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 672
    Par défaut
    la version de java : j2sdk1.4.2_04 et j2sdk1.4.2_05 (perso et prod)
    quant aux "/", ca vient du fait que "TestInitialisation.class" est dans le package "test", comment lui dire ou est la classe sinon?

    en tout cas merci pour la piste!!

  9. #9
    Membre émérite Avatar de Spoutnik
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 672
    Par défaut
    putain, je crois avoir trouve....

    si je remplace les "/" par des "." dans le web.xml, j ai une reponse, avec une erreur d execution, mais ca repond....

    je crois que c est ca....

    merci beaucoup!!!!

  10. #10
    Membre émérite Avatar de Spoutnik
    Homme Profil pro
    Inscrit en
    Octobre 2003
    Messages
    672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 672
    Par défaut
    c 'est ca!!! merci beaucoup!!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/10/2011, 16h10
  2. Réponses: 0
    Dernier message: 26/01/2011, 20h32
  3. Tomcat, Ubuntu Server et librairie externe : NoClassDefFoundError
    Par michel.di dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 23/09/2010, 23h48
  4. Réponses: 5
    Dernier message: 16/04/2010, 09h14
  5. Tomcat + Apache-SOAP
    Par lucho31 dans le forum Services Web
    Réponses: 3
    Dernier message: 17/10/2002, 09h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo