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

Eclipse Java Discussion :

[Eclipse WTP] Deploiement sur Tomcat 5.5


Sujet :

Eclipse Java

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut [Eclipse WTP] Deploiement sur Tomcat 5.5
    Bonjour je developpe actuellement une application JEE sur Eclipse WTP en Struts et Hibernate 3. Le serveur utilisé pour le deploiement un serveur Tomcat 5.5. Dans cette application, je gère l'authentification de mes users via un datasourceRealm... Les mots de passe sont cryptés en MD5 via l'ajout de l'attribut digest="MD5" dans mon élement <Realm/>.

    J'ai une action de population de la base qui va lire des informations dans des fichiers CSV (users, mots de passe...). Dans ces fichiers, ces mots de passe sont écrits en clair. Je voudrais les stocker en crypté dans ma base. Pour ce faire, j'utilise la méthode ci dessous qui fait appel à une méthode utilitaire d'un jar de Tomcat:
    Ce jar est situé dans:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    %TOMCAT_HOME%\server\lib
    Voici son code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    private String getDigestedText(String text, String algorithm) {
    	return RealmBase.Digest(text, algorithm);
    }
    Pour que Eclipse ne me lève pas d'erreurs de compilation, j'ai ajouté le catalina.jar (en tant que jar externe) dans le build path de mon application... Jusque là pas de problème. Néanmoins quand je déploie mon application sur le serveur Tomcat (paramétré dans l'onglet serveur d'Eclipse) via "Run on server", j'ai l'exception suivante qui est levée dans l'action de population de ma base:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    2006-02-14 11:00:53,125 [http-80-Processor24] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/].[action] - "Servlet.service()" pour la servlet action a généré une exception
    java.lang.NoClassDefFoundError: org/apache/catalina/realm/RealmBase
    	at com.toto.website.hibernate.manager.DatabaseManager.getDigestedText(DatabaseManager.java:501)
    Pourtant le jar est bien dans le server tomcat non, pas besoin de l'inclure en tant que librairie tierce???

    Si quelqu'un peut m'aider...
    Merci d'avance

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    Mon application nécéssite aussi du driver JDBC (MySQL dans mon cas). J'avais placé ce dernier dans le répertoire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    %TOMCAT_HOME%\common\lib
    Je sais que c'est pas trop conseillé mais bon je l'ai fait à titre de tests.

    Alors ce qui est bizarre maintenant, c'est que j'ai retiré le driver JDBC MySQL de ce répertoire pour le mettre dans:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    %TOMCAT_HOME%\shared\lib
    Ce qui est plus propre...

    Désormais mon application ne trouve plus ce jar et j'ai droit à cette exception:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    Alors voici le constat:
    *Quand mon application est packagée dans un war et que je la déploie sur Tomcat (sans Eclipse), j'ai pas de problèmes....

    *Quand mon application est déployée sur Tomcat (via Eclipse), j'ai des problèmes de classpath....

    Quelqu'un a t il déjà était confronté à ce problème???

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2004
    Messages : 882
    Points : 948
    Points
    948
    Par défaut
    La solution que j'ai trouvée consiste à ajouter ces jars dans la configuration de déploiement de l'application (user entries).
    Si vous avez une meilleure solution, n'hésitez pas à me le faire savoir....

    ++

    Sun Certified Business Component Developer
    Sun Certified Java Programmer
    --
    The definitive toolbox for GWT applications: gwt-toolbox
    My blog about Java and JEE: Benjamin's Blog

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

Discussions similaires

  1. Erreur lors du deploiement sur Tomcat
    Par hadakamatcho dans le forum Struts 1
    Réponses: 8
    Dernier message: 30/11/2010, 17h33
  2. deploiement d'une servlet sur Tomcat
    Par reeda dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 07/07/2009, 12h30
  3. [Eclipse][WTP] Question sur les versions
    Par Devilpika dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 29/10/2007, 14h52
  4. Réponses: 1
    Dernier message: 21/07/2006, 18h19
  5. tomcat eclipse/wtp server.xml
    Par hatifnatte dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 14/07/2006, 12h25

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