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 :

XML Document vide


Sujet :

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

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Par défaut XML Document vide
    Bonjour j'utilise le code suivant pour parser un docuement XML

    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
     
    public static Node loadLibraryFile(String filename)
    {
    	try
    	{
    		// création d'une fabrique de documents
    		DocumentBuilderFactory fabrique = DocumentBuilderFactory.newInstance();
    		fabrique.setValidating(false);
    		// création d'un constructeur de documents
    		DocumentBuilder constructeur = fabrique.newDocumentBuilder();
     
    		// lecture du contenu d'un fichier XML avec DOM
    		File xml = new File(filename);
    		Document doc = constructeur.parse(xml);
    		Node root = doc.getDocumentElement();
    		return root;
    	}
    	catch (Exception e)
    	{
    		e.printStackTrace();
    	}
    	return null;
    }
    mais malheuresement je recupere toujours un element root null.

    J'utilise une JRE 1.5.10 et jer ne precise rien dans mon cp concernant l'utilisation du parser que je souhaite utiliser. Que dois je faire ? Ou est mon erreur? une idee ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 144
    Par défaut
    Bonjour,
    Si tu veux parser le document je pense que ta function doit retourner un Document et non pas un Node,
    Pour ça je pense que ta function doit etre:
    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
     
    public static Document loadLibraryFile(String filename)
    {
    	try
    	{
    		// création d'une fabrique de documents
    		DocumentBuilderFactory fabrique = DocumentBuilderFactory.newInstance();
    		fabrique.setValidating(false);
    		// création d'un constructeur de documents
    		DocumentBuilder constructeur = fabrique.newDocumentBuilder();
     
    		// lecture du contenu d'un fichier XML avec DOM
    		File xml = new File(filename);
    		Document doc = constructeur.parse(xml);
    		return Doc;
    	}
    	catch (Exception e)
    	{
    		e.printStackTrace();
                    return null;
    	}
     
    }
    pour plus d information :Lien
    bon developpement

  3. #3
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    J'approuve!

    Ensuite, pour récupérer la racine du document, il te suffit de rajouter:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Node root = doc.getRootElement();
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  4. #4
    Candidat au Club
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Par défaut C'est ce que je fais deja
    Je fais exactement ce que vous suggerez, j'essaie de renvoyer directement le root du document mais ca ne marche pas. Mon objet Document ne semble pas avoir d'enfants. Pourtant si je corromps volontairement le fichier XML a lire le parse du fichier echoue comme attendu. je ne comprend ce qui se passe

  5. #5
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Et une utilisation bête, méchante, et basique de l'API JDom (sans utiliser de Factory ou autres...), ça ne fonctionne pas comme tu veux?

    J'ai déjà lu quantités de documents XML comme ça sans jamais rencontrer le moindre soucis :/

    Si besoin, je te donnerai l'extrait de code avec lequel j'ouvre et je parse mes fichiers... je ne l'ai pas sous la main, mais je n'ai pas souvenir d'avoir utilisé une quelconque "Factory"
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

Discussions similaires

  1. [c#] passer un xml document à une méthode du webservice
    Par nemya dans le forum Services Web
    Réponses: 3
    Dernier message: 18/12/2006, 15h17
  2. [Plugin][Lomboz] web.xml reste vide lors du déploiement
    Par ollivier dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 19/01/2006, 14h20
  3. [xml]documentation xsl-fo
    Par pingooping dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 31/10/2005, 14h59
  4. Réponses: 5
    Dernier message: 24/05/2005, 10h44

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