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

Servlets/JSP Java Discussion :

Problème de chemin relatif


Sujet :

Servlets/JSP Java

Vue hybride

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Par défaut Problème de chemin relatif
    Bonjour à tous,

    Dans un dynamic web project sous eclipse, j'arrive à accéder à un fichier en chemin absolu, mais pas en chemin relatif.

    C'est un fichier properties qui se trouve dans un repertoire "resources", et qui est appelé par une classe Bean qui se trouve dans un repertoire "controle".

    l'arborescence correspondante est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    src
     |_com
           |_societe
                  |_projet
                         |_controle
                         |       |_le bean qui appelle le .properties
                         |
                         |_resources
                                 |_messages.properties
    J'essaie donc d’accéder depuis la classe Bean à ce properties par le chemin relatif suivant :
    ../resources/messages.properties
    Et ça ne fonctionne pas (erreur null pointer)
    De même en faisant ../../projet/resources/messages.properties

    Avez-vous une idée ?

    Bonne semaine et merci

  2. #2
    Membre Expert
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Par défaut
    Bonjour,

    Quelle méthode utilises-tu pour charger le fichier ?

  3. #3
    Membre Expert
    Avatar de fxrobin
    Homme Profil pro
    Architecte SI, Java Fan, API Manager
    Inscrit en
    Novembre 2007
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte SI, Java Fan, API Manager
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2007
    Messages : 875
    Par défaut
    Salut,

    le plus simple à partir d'une Servlet est d'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      ServletContext context = this.getServletContext();
      InputStream fichier = context.getResourceAsStream("/mon-fichier.properties");
    Le chemin doit commencer par "/" obligatoirement et peut pointer vers n'importe quel fichier de ta WebApp.

    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    InputStream fichier = context.getResourceAsStream("/WEB-INF/resources/mon-fichier.properties").

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Par défaut
    Merci pour vos réponses.

    @fxrobin : je viens d'essayer ta soluce mais j'ai un message d'erreur me demandant de definir la methode getServletContext(), car je ne suis pas dans une servlet mais dans un FormBean.
    comment faire dans ce cas ?

    @Nesmontou : j'utilise le code suivant pour ce faire :
    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
    Properties props = new Properties();
    String chemin = "../resources/messages.properties";
    FileInputStream in = null;
    try {
    in = new FileInputStream(chemin);
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    } 
    try {
    props.load(in);
    } catch (IOException e) {
    e.printStackTrace();
    }
    try {
    in.close();
    } catch (IOException e) {
    e.printStackTrace();
    A votre avis comment pourrais-je faire ?
    Merci pour votre aide

  5. #5
    Membre Expert
    Avatar de fxrobin
    Homme Profil pro
    Architecte SI, Java Fan, API Manager
    Inscrit en
    Novembre 2007
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte SI, Java Fan, API Manager
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2007
    Messages : 875
    Par défaut
    Tu es donc sous Struts (1.3.x ?)

    alors il te suffit de faire ça pour obtenir le context de servlet de ton ActionForm

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ServletContext context = this.getServlet().getServletContext();
    InputStream fichier = context.getResourceAsStream("/mon-fichier.properties");

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Par défaut
    @fxrobin : je ne suis pas sous strut, juste une web application avec des jsp, servlets, beans et classes dao.

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

Discussions similaires

  1. Problème de chemin relatif/absolu
    Par lad86 dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 25/06/2010, 12h07
  2. problème de chemin relatif
    Par label55 dans le forum Langage
    Réponses: 7
    Dernier message: 01/02/2009, 17h11
  3. Problème de chemin relatif
    Par Pendary dans le forum C++Builder
    Réponses: 1
    Dernier message: 05/06/2007, 09h45
  4. [Picturebox] Problème de chemin relatif ?
    Par Invité dans le forum VB.NET
    Réponses: 2
    Dernier message: 08/04/2007, 14h48
  5. [JSP] Include, problème de chemin relatif
    Par dafly dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 15/04/2004, 14h11

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