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

Servlets/JSP Java Discussion :

Question sur le classPath


Sujet :

Servlets/JSP Java

  1. #1
    Membre �clair� Avatar de scandinave
    Homme Profil pro
    D�veloppeur Java, NodeJs/Angular
    Inscrit en
    Mai 2009
    Messages
    277
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Java, NodeJs/Angular

    Informations forums :
    Inscription : Mai 2009
    Messages : 277
    Par d�faut Question sur le classPath
    Bonjour,
    Je souhaite r�cup�rer un fichier config.properties situer dans mon WEB-INF.
    Dans une servlet, j'utilise un
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Properties properties = new Properties();
            InputStream is = this.getClass().getResourceAsStream(fileName+".properties");
            try{
                properties.load(is);
                return properties;
            } finally{
                is.close();
    }
    Ma question est :
    Est-il possible de faire la m�me chose avec une classe situer dans src?
    Parce cette m�thode ne marche pas dans une classe pour un fichier dans le WEB-INF

  2. #2
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    141
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 141
    Par d�faut
    Bonsoir, d�j� cela d�pend de ton type de projet. Si t'es dans un projet dynamique Web, tous les fichiers configurer dans ton src est copi� dans ton WEB-INF/classes implicitement, en effet si tu d�marre ton projet depuis Eclipse ils sont copi�s dans ton dossier build. donc classpath=src=WEB-INF/classes. Si t'es dans un projet Java simple, ton soit ton classpath=src si tu d�marres ton projet depuis Eclipse, et en mode Web ton classpath=WEB-INF/classes, il faudra le alors copier tous tes fichiers du src dans ton WEB-INF/classes pour qu'ils soient pris en compte par l'application. Pour acc�der � ton WEB-INF, il faut le pr�ciser, sinon utiliser un ClassLoader, afin de r�cup�rer facilement tous tes fichiers, sinon y a toujours le protocole file...

  3. #3
    Membre �clair� Avatar de scandinave
    Homme Profil pro
    D�veloppeur Java, NodeJs/Angular
    Inscrit en
    Mai 2009
    Messages
    277
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Java, NodeJs/Angular

    Informations forums :
    Inscription : Mai 2009
    Messages : 277
    Par d�faut
    Je suis dans un projet web et je voudrais qu'une de mes classes acc�de a un config.properties situer dans web-inf.
    C'est possible �a? et avoir le code serait vraiment top

  4. #4
    Membre �prouv�
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    141
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 141
    Par d�faut
    Utilises un ResourceBundle, mais tu dois lui donner le chemin de ton fichier properties en sachant que "." est la racine de ton projet. sinon comme je t'es dit t'as les protocoles classpath, file ...

  5. #5
    Membre �clair� Avatar de scandinave
    Homme Profil pro
    D�veloppeur Java, NodeJs/Angular
    Inscrit en
    Mai 2009
    Messages
    277
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Java, NodeJs/Angular

    Informations forums :
    Inscription : Mai 2009
    Messages : 277
    Par d�faut
    Bon j'ai d�cider de faire autrement .
    Je r�cup�re le chemin du dossier contenant les configs comme ceci
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
     File f = new File(this.getServletContext().getRealPath("/")+"WEB-INF/config");
    Ensuite je fais appel a cette m�thode dans ma servlet Dispatcher pour charger en session l'ensemble des fichier .properties

    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
     
     public void listeRepertoire ( File repertoire ) throws IOException {
            System.out.println(this.request);
            if ( repertoire.isDirectory ( ) ) {
                    File[] list = repertoire.listFiles();
                    if (list != null){
    	                for ( int i = 0; i < list.length; i++) {
    	                        // Appel récursif sur les sous-répertoires
    	                        listeRepertoire( list[i]);
    	                } 
                    } else {
                    	System.err.println(repertoire + " : Erreur de lecture.");
                    }
            } else {
                String[] splitName = repertoire.getName().split("\\.");
                String ext = splitName[1];
                if("properties".equals(ext)){
                    System.out.println(repertoire.getAbsolutePath());
                    Properties prop =                    this.loadProperties(repertoire.getAbsolutePath());
                    System.out.println("[Dispatche ligne 175] " + prop.getProperty("databaseConf"));
                    this.request.setProperties(splitName[0], prop);
                }
            }
        }
    Le probl�me c'est que j'ai un null pointer execption sur la ligne

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    this.request.setProperties(splitName[0], prop);
    . Il n'arrive pas � acc�der � l'attribut request de cette m�me servlet. Je ne comprend pas pourquoi. je pense que cela viens de la r�cursivit� mais je ne voit pas comment corrig� le probl�me

  6. #6
    Membre �clair� Avatar de scandinave
    Homme Profil pro
    D�veloppeur Java, NodeJs/Angular
    Inscrit en
    Mai 2009
    Messages
    277
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Java, NodeJs/Angular

    Informations forums :
    Inscription : Mai 2009
    Messages : 277
    Par d�faut
    Oups dsl erreur d'inatention, je n'avais pas initialis� le param�tre request avant de l'utiliser. Donc r�solus

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. question sur classpath
    Par root76 dans le forum Eclipse Java
    R�ponses: 2
    Dernier message: 10/11/2006, 11h23
  2. [debutant] question sur JCreator ? (son classpath)
    Par easyman dans le forum Environnement de D�veloppement Int�gr� (EDI)
    R�ponses: 3
    Dernier message: 25/10/2005, 09h56
  3. Question sur les handles et les couleurs...
    Par MrDuChnok dans le forum C++Builder
    R�ponses: 7
    Dernier message: 29/10/2002, 09h45
  4. R�ponses: 2
    Dernier message: 11/08/2002, 22h27
  5. question sur les message box !
    Par krown dans le forum Langage
    R�ponses: 7
    Dernier message: 02/08/2002, 17h11

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