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 :

Accéder à un répertoire hors webapps


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué

    Profil pro
    Inscrit en
    Mars 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 11
    Par défaut Accéder à un répertoire hors webapps
    Bonjour à tous.

    Le sujet à déjà été abordé ici : http://www.developpez.net/forums/d40...rouve-webapps/

    J'ai sensiblement le même soucis : je dois pour des raisons techniques externaliser le répertoire qui contiendra la liste des mes éditions électroniques.

    projet tomcat J2EE / struts 2.0 / hibernate / JasperReport / Log4j

    Environnement Windows : tout va bien
    Environnement Unix : echec. le répertoire temporaire auquel je tente d'accéder est /toto/tata. Ce dernier est existant dans la console ("cd /toto/tata" me met bien dans le bon répertoire)

    Après 1000 echecs j'en suis venu à faire un test simple

    Dans ma classe de démarrage je fait un test

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    File repTemp = new File("/toto/tata/");
    if (!repTemp.exists())
    {
      /** Traitement d'arret **/
    }
    et évidement je tombe dans le traitement d'arrêt.

    idem avec "/toto/tata"

    Également tenté avec la récupération du chemin absolu qui n'est visiblement pas la solution vu qu'il me propose le chemin de ma webapps suivit de "/toto/tata" ce que je ne veux pas avoir justement...

    On m'a proposer de récupérer le chemin absolu et de le remonter avec des ../../.. [...] ../toto/tata ce que je refuse à faire pour des raisons évidente de codage de merde

    Je sais que certains parlent de mettre en contexte le répertoire en question

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <Context path="/Mypath" docBase="D ton chemin" />
    je n'aime pas cette manière, afin de permettre la bascule entre différent environnement on doit concentrer les fichiers properties et éviter d'en foutre partout.

    J'ai lu que par sécurité Tomcat refuserais de lire/écrire en dehors de la webapps... mais comment ce fait il alors que mon log4j.xml paramétré pour sortir en /log/pgm.log fonctionne lui !

    Google ne m'a pas encore donné de solution, je me retourne donc vers vous

    Merci d'avance à tous ceux qui se pencheront sur mon pb

    NB : les droits d'écritures/lecture UNIX peuvent ils jouer sur mon soucis ?
    /toto -> drwxrwxr-x
    /toto/tata -> drwxr-xr-x

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Quels sont les propriétaire de /toto et /toto/tata, est-ce le meme utilisateur que celui qui lance tomcat?

  3. #3
    Membre habitué

    Profil pro
    Inscrit en
    Mars 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 11
    Par défaut
    salut tchize_

    bonne question. Normalement non, mais au moins du même groupe d'utilisateur

    dans tous les cas et sauf erreur de ma part, si le chmod est de type r--r--r-- je devrait être capable dans tous les cas de lire /toto/tata (supposition faite que je puisse déjà rentrer dans /toto évidement)

    je reviens demain matin avec la réponse précise à ta question (par ce que là les mecs du bureau... ben ils sont pas prêts de me répondre )

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    comme je suppose que tu travaille avec autre chose plus complexe en réalité que toto/tata, je te suggère de regarder tout le chemin toto/tata. Tu dosi au moins avoir les droits de lecture sur tous les parents de toto, avec les droits de lecture et exécution sur toto (de manière à pour voir tata) et de fait les droits de lecture / exécution sur tata pour pouvoir lister son contenu.

  5. #5
    Membre habitué

    Profil pro
    Inscrit en
    Mars 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 11
    Par défaut
    Non c'est aussi simple comme arborescence (va t'en comprendre la logique des mecs s'occupant du serveur..)

    /toto/tata

    chez moi est simplement :

    /nomDeMonAppli/tmp

    bref

    comme j'ai pu le marquer :

    /toto -> drwxrwxr-x
    /toto/tata -> drwxr-xr-x

    donc pour tous les users du serveur normalement je dois être capable d'au moins lire vu que j'ai "r" et "x" pour le proprio/le groupe/les autres.

    J'ai contacté les responsable qui m'ont confirmé que mon user qui lance tomcat n'est pas le propriétaire du dossier. Ils sont en train de l'ajouter au groupe du propriétaire.

    Je reviens avec + d'info dès que je reçois leur feu vert.

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    en attendant on peux voir ton code prod qui tente d'accéder au répertoire? Si tu te met en tant que user tomcat, tu peux lire le dossier (cd /toto/tata; ls -l). Je connais pas la config de ton serveur, mais si ca tombe ils ont rajouté des ACLs qui t'excluent

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

Discussions similaires

  1. [C#]Accéder à un répertoire partagé sur une machine distante
    Par spaceclic dans le forum Windows Forms
    Réponses: 15
    Dernier message: 14/05/2007, 15h43
  2. Pas autorisé à accéder au répertoire "cgi-bin" ave
    Par Pragmateek dans le forum Serveurs (Apache, IIS,...)
    Réponses: 3
    Dernier message: 09/04/2006, 15h45
  3. [EAR] Accéder à un répertoire interne
    Par Bb_TiTi dans le forum Java EE
    Réponses: 4
    Dernier message: 30/03/2006, 15h50
  4. [VB.Net] accéder à un controle hors de la Form
    Par sergio_bzh dans le forum Windows Forms
    Réponses: 5
    Dernier message: 12/12/2005, 18h11
  5. Accéder à un répertoire distant
    Par cosmos38240 dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 30/08/2004, 17h15

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