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

Format d'échange (XML, JSON...) Java Discussion :

Configurer un chemin de répertoire


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 34
    Par défaut Configurer un chemin de répertoire
    Bonjour, j'ai une application java, qui prend comme entrée un chemin d'un répertoire ( qui fait le traitement dessus ),



    Problème : si je change de machine ,ou je modifie le nom du répertoire , l'application ne marche plus, j'ai entendu parler d'une configuration XML , j'ai fait quelques recherche sur net , mais malheureusement j'ai rien trouvé , quelqu'un peut m'aider s'il vous plait ?.


    Merci,

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    XML ou autre chose, peu importe.

    Il te faut bel et bien un fichier de configuration pour indiquer à ton programme ce qui change d'un ordi à l'autre.
    Mais ça peut être du XML comme ça peut être autre chose. Si tu as juste un répertoire à configurer, tu peux juste faire un fichier texte avec le nom du répertoire dedans.
    Dans tous les cas, tu iras plus vite en le faisant toi-même qu'en cherchant quelqu'un qui l'a fait à ta place.

    Le fichier pourrait être par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    File file = new File(System.getProperty("user.home") + "/.le-programme-a-sceptique.conf");
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 34
    Par défaut
    Merci pour votre réponse, justement ça fait déjà 2 jours que je cherche et j'ai rien trouvé ; fin je sais pas quoi chercher , si tu peux m'expliquer un peu plus s'il vous plait.



    ( le répertoire contient des sous répertoires avec des fichiers que je dois parcourir avec mon application )

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur Java / JEE
    Inscrit en
    Février 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java / JEE

    Informations forums :
    Inscription : Février 2008
    Messages : 185
    Par défaut
    Bonjour,

    Je n'ai pas bien compris ton problème, comment est pris en compte le fichier XML à lire ? C'est en ligne de commande ? Dans une interface graphique ? Ou "en dur" ?
    J'ai l'impression que ton problème vient du fait que le chemin est en dur dans le code. Que du coup quand tu changes de machine, le chemin n'existe pas forcément.
    Peux-tu nous détailler un plus ton programme et les technologies qu'il utilise ? Est-ce que tu peux nous publier le bout de code qui charge le fichier ?

    Mathieu

  5. #5
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par Sceptique Voir le message
    Merci pour votre réponse, justement ça fait déjà 2 jours que je cherche et j'ai rien trouvé ; fin je sais pas quoi chercher , si tu peux m'expliquer un peu plus s'il vous plait.
    - Tu dois chercher comment faire un fichier de configuration, pour que ce fichier de configuration indique à ton programme dans quel répertoire il doit aller travailler.
    - Un fichier de configuration se fait comme n'importe quel autre fichier. Il faut juste que tu mettes dedans ce dont tu as besoin.
    - En l'occurrence, juste mettre le chemin où tu veux aller travailler, sera suffisant.
    - L'usage est de les mettre dans un répertoire de l'utilisateur en cours, et de leur donner un nom unique pour le programme. Le code que j'ai donné au-dessus, va typiquement utiliser le fichier C:/Users/thelvin/.le-programme-a-sceptique.conf sous Windows 7/Vista, et des endroits de ce genre sur d'autres OS. Ça marche et ce n'est pas trop mal. Tu pourrais aussi le mettre par exemple dans C:/le-programme-a-sceptique/conf.conf. Comme tu veux du moment que tu le retrouves d'une machine à l'autre.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 34
    Par défaut
    J'ai crée un XML pour mon projet java :

    TESTXML.xml

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?xml version="1.0" encoding="UTF-8"?>
    <personnes>
     
       <etudiant classe="P1">
          <nom>C:/Users/Anonyme/Desktop/TEST</nom>
       </etudiant>
     
    </personnes>


    _________________________________

    Code Java : 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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    public class JDOM2
    {
       static org.jdom2.Document document;
       static Element racine;
        static String afficheALL()
            {
     
               List listEtudiants = racine.getChildren("etudiant");
               String X="";
     
               Iterator i = listEtudiants.iterator();
               while(i.hasNext())
               {
     
                  Element courant = (Element)i.next();
     
                  X=courant.getChild("nom").getText();
               }
               return X;
            }
     
       public static void main(String[] args)
       {
           String Y="";
     
          SAXBuilder sxb = new SAXBuilder();
          try
          {
     
             document = sxb.build(new File("TESTXML.xml"));
          }
          catch(Exception e){}
     
     
          racine = document.getRootElement();
     
     
          Y=afficheALL();
          System.out.print(Y);
       }
    }


    J'ai le bon retourne,
    Questions :
    -Est ce que ça marche comme ça l'XML?
    -Quand je prend l’exécutable de mon projet et le mettre dans une machine , je dois déplacer le fichier XML aussi ?
    -Si vous avez d'autre conseils, hésitez pas :p

  7. #7
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par Sceptique Voir le message
    -Est ce que ça marche comme ça l'XML?
    Ça marche de nombreuses manières.
    Celle-ci n'est pas mal, mais c'est vraiment chasser une mouche au char d'assaut. Il y avait bien plus simple.

    Citation Envoyé par Sceptique Voir le message
    -Quand je prend l’exécutable de mon projet et le mettre dans une machine , je dois déplacer le fichier XML aussi ?
    Autre possibilité : créer un fichier par défaut au premier démarrage. Mais l'utilisateur devra modifier ce fichier pour que le programme aille dans le bon répertoire, bien sûr.

    Citation Envoyé par Sceptique Voir le message
    -Si vous avez d'autre conseils, hésitez pas :p
    Pourquoi faire un fichier XML alors qu'il suffit d'un simple paramètre de commande :

    Code Shell : Sélectionner tout - Visualiser dans une fenêtre à part
    java -jar tonProgramme.jar "C:/Users/Anonyme/Desktop/TEST"

    ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 34
    Par défaut
    Citation Envoyé par thelvin Voir le message

    Autre possibilité : créer un fichier par défaut au premier démarrage. Mais l'utilisateur devra modifier ce fichier pour que le programme aille dans le bon répertoire, bien sûr.

    C'est ce que j'essaye de faire,


    Citation Envoyé par thelvin Voir le message
    Pourquoi faire un fichier XML alors qu'il suffit d'un simple paramètre de commande :

    Code Shell : Sélectionner tout - Visualiser dans une fenêtre à part
    java -jar tonProgramme.jar "C:/Users/Anonyme/Desktop/TEST"

    ?

    En cas où un admin qui ne connait pas trop en java , il ne sais que lancer l’exécutable et modifie un fichier text/XML,


    j'ai reùssi mon programme dans le netbeans ( mode console ) , mais




    Java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    String f = null;
            BufferedReader lecteur = new BufferedReader(new FileReader("config.properties")); // Des objects biens utiles pour lire ton fichier
            f = lecteur.readLine(); // tu récupères ici la premier ligne de ton fichier qui correspond à ce que tu veux et c'est fini
     
            Test_ajout diskFileExplorer = new Test_ajout();
           // Long start = System.currentTimeMillis();
     
            diskFileExplorer.ajout_nouveau(f);

    config.proprietes :

    C:/Users/Anonyme/Desktop/Stage_document2/radar/xx.jpg


    Quand je fait un " Run file " , j'ai le bon résultalt

    aprés j'ai lancé un "Clean & Build" , et avec pour l'exécutable j'ai télécharger Launch4j,

    quand je lance Build Wrapper , sa affiche ça comme message:

    Compiling resources

    Linking

    Wrapping

    Successfully created C:\Users\Anonyme\Documents\NetBeansProjects\test_ajout\dist\mouad.exe


    Donc c'est Ok pour cet étape,
    mais lorsque je lance le test Wrapper :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Exception in thread "main" java.io.FileNotFoundException: config.properties (The system cannot find the file specified)
    	at java.io.FileInputStream.open(Native Method)
    	at java.io.FileInputStream.<init>(Unknown Source)
    	at java.io.FileInputStream.<init>(Unknown Source)
    	at java.io.FileReader.<init>(Unknown Source)
    	at test_ajout.Test_ajout.main(Test_ajout.java:246)

  9. #9
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Je ne connais pas Launch4j, mais il semble assez évident que
    - soit le fichier n'existe pas, donc erreur en essayant de le lire
    - soit le répertoire de travail du programme, n'est pas le répertoire qui contient le fichier de conf. Cela peut sûrement s'arranger en faisant une formation sur Launch4j, c'est un problème récurrent qu'il est justement censé simplifier.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 34
    Par défaut
    Citation Envoyé par thelvin Voir le message
    - soit le fichier n'existe pas, donc erreur en essayant de le lire
    - soit le répertoire de travail du programme, n'est pas le répertoire qui contient le fichier de conf. Cela peut sûrement s'arranger en faisant une formation sur Launch4j, c'est un problème récurrent qu'il est justement censé simplifier.

    Si il existe parceque quand je lance l'application dans netbeans, ça affiche aucun probléme, et j'ai le bon résultat ,par contre quand j'ai le .jar ( quand je double clique sur , il donne pas de résultat aussi ) d'où l'erreur .exe

  11. #11
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    C'est pas la même situation. S'il existe dans une situation, il n'existe pas forcément dans l'autre. C'est quand même pas compliqué à comprendre.

    Mais je soupçonne plutôt le répertoire de travail qu'est pas le même. J'ose espérer que si ton fichier existait pas, tu t'en serais quand même aperçu.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  12. #12
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2013
    Messages : 34
    Par défaut
    Si j'ai bien compris tes mots, je dois mettre le jar et le fichier proprietes dans le même dossier?

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/09/2006, 16h52
  2. Réponses: 4
    Dernier message: 08/08/2006, 23h33
  3. problème avec les chemins de répertoire
    Par psychoBob dans le forum Langage
    Réponses: 12
    Dernier message: 28/05/2006, 10h39
  4. [Configuration] Pointer vers un répertoire racine
    Par masseur dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 22/03/2006, 16h02
  5. [DEBUTANT] Modifier le chemin du répertoire data
    Par tripper.dim dans le forum Installation
    Réponses: 1
    Dernier message: 12/01/2006, 19h12

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