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

avec Java Discussion :

Problème de path sous linux


Sujet :

avec Java

  1. #1
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut Problème de path sous linux
    Salut,

    J'avais fait un soft d'essai afin de créer un fichier puis d'en restaurer ses valeurs ensuite. Il s'avère que le fichier ne se crée pas sous linux. J'aurais aimer que sous /home/test.properties, un fichier puisse se créer.

    J'ai comme intuition que les droits peuvent être une partie du problème, mais en /home ça ne devrais pas.
    J'ai comme autre intuition que /home//test.properties ne suffit pas et que, du coup le path n'est pas correct.

    Pour exemple de bout de code...
    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
     
     private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {                                           
            // Créer un properties
            String urlFichier;
            urlFichier = "/home/Test.properties";
     
            String Section = "Section";
            String Cle = "Cle";
            String Donnee = "Ma donnée1";
     
            Properties propFichier = new Properties();
            try {
                propFichier.setProperty(Section + "." + Cle, Donnee);
                OutputStream FichierSortie = new FileOutputStream(urlFichier);
                OutputStreamWriter fw = new OutputStreamWriter(FichierSortie, "ISO-8859-1");
                propFichier.store(fw, "Test commentaire");
                fw.flush();
                fw.close();
     
                jTextArea1.setText("Fichier crée sous: " + urlFichier + "\n");
                jTextArea1.setText(Section + "." + Cle + " = " + Donnee +"\n");
            }
            catch (FileNotFoundException e) {
                e.printStackTrace();
            }
            catch (IOException e) {
                e.printStackTrace();
            }
        }
    Oh !
    A l'exécution, tout va bien mais à la création du fichier, voila les messages que me retourne netbeans :
    run:
    java.io.FileNotFoundException: /home/Test.properties (Permission denied)
    at java.io.FileOutputStream.open(Native Method)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:209)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:99)
    at Form1.jMenuItem1ActionPerformed(Form1.java:186)
    at Form1.access$200(Form1.java:22)
    at Form1$3.actionPerformed(Form1.java:76)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:374)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:829)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:873)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
    at java.awt.Component.processMouseEvent(Component.java:6108)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:5873)
    at java.awt.Container.processEvent(Container.java:2105)
    at java.awt.Component.dispatchEventImpl(Component.java:4469)
    at java.awt.Container.dispatchEventImpl(Container.java:2163)
    at java.awt.Component.dispatchEvent(Component.java:4295)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
    at java.awt.Container.dispatchEventImpl(Container.java:2149)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4295)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:604)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
    GÉNÉRATION TERMINÉE (durée totale* 38 secondes)
    Ca ressemble à un problème de droit sous linux. Une confirmation ?

    Si vous voyais d'où cela peut venir et comment corriger cela, je suis preneur.

  2. #2
    Membre averti
    Inscrit en
    Avril 2010
    Messages
    239
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 239
    Points : 313
    Points
    313
    Par défaut
    Bonjour,

    Que vous donne la commande :
    dans le shell ?

  3. #3
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    bonjour,

    C'est effectivement un problème de droit, comme l'indique la ligne suivante de ta stack trace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    java.io.FileNotFoundException: /home/Test.properties (Permission denied)
    Je pense que c'est normal, /home/ n'ai probablement pas modifiable par un utilisateur non root ou auquel on aurait attribué les droits d'écriture dans se répertoire.

    Sous linux un utilisateur à tous les droits sur son répertoire HOME qui est plutôt /home/nom_utilisateur.
    Donc pour ton test, change le chemin de Test.properties en "/home/ton_utilisateur/Test.properties" et cela devrait fonctionner !
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2010
    Messages : 33
    Points : 39
    Points
    39
    Par défaut
    Il y a des chances que ca soit un problème de droit, 2 facons de s'en sortir

    1. La plus sale: mettre les droit d'écriture pour ton user dans /home
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      chmod 0777 /home/Test.properties
      ou encore plus sale
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      chown user:group /home
      chmod 0755 /home
      C'est évidemment déconseillé étant donné les problèmes de sécurité que celà peut amener.
    2. La plus propre: mettre ton fichier Test.properties dans ton home
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      mv /home/Test.properties /home/user/Test.properties


    Bonne journée

  5. #5
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Et bien chose curieuse, mon /home/user donne ceci : drwxr-xr-x 66 ... Donc ?
    Donc ca fonctionne parfaitement dans /home/user/ !

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Euh, certes... Il te restait une question ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. problème installation postgresql sous linux debian
    Par pimousse3000 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 14/12/2006, 13h08
  2. Problème erreurs sockets sous Linux
    Par Ange44 dans le forum Linux
    Réponses: 6
    Dernier message: 05/09/2006, 16h16
  3. Problème de portabilité sous Linux
    Par eG.dam dans le forum Linux
    Réponses: 4
    Dernier message: 23/06/2006, 23h06
  4. [WebService](SSL] Problème de SSL sous Linux
    Par Tueur_a_gage dans le forum JOnAS
    Réponses: 4
    Dernier message: 09/01/2006, 16h38
  5. Problème avec glutFullScreen() sous linux...
    Par MaxPayne dans le forum OpenGL
    Réponses: 1
    Dernier message: 29/11/2004, 11h30

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