Salut,
j'ai creé un code java pour parcourir un fichier XML et afficher quelques données ,
mais il a affiché des erreurs que je n'ai pas pu les corriger

voici le fichier XML:

Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
<?xml version="1.0" encoding="utf-8" ?> 
 <application>
  <interface nom="Magic_MED" longueur="600" largeur="700">
  <barre-outil nom="jToolBar1" abscisse="......" ordonne="" /> 
  </interface>
  </application>

Voici le 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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
import org.w3c.dom.Attr;
import org.w3c.dom.NamedNodeMap;
import javax.xml.parsers.FactoryConfigurationError;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.w3c.dom.NodeList.*;
import javax.xml.transform.*;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.dom.DOMSource;
import java.lang.*;
import java.util.*;
import javax.naming.directory.*;
import java.io.*;
import java.util.*;
public class XMLReadWrite {
 
    static int longeur;
    static int largeur;
 
    public static void xmlCdeRead(String cdeName) throws Exception {
   try{
     //récupère une instance de la classe de fabrication
     DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
     //Récupère une instanxce de la classe DocumentBuilder
     DocumentBuilder parser=factory.newDocumentBuilder();
     //Effectue le parsing avec récupération du noeud DOM Document
     Document document=parser.parse(cdeName);
     Element utilisateur=document.getDocumentElement();
 
    System.out.println("*****************************"+utilisateur.getTagName());
 
 
 
     NodeList application= utilisateur.getChildNodes();
     System.out.println("*****************************"+application.getLength());
 
     for(int i=0; i<application.getLength(); i++){
       parcoursDocument(application.item(i), application.item(i).getNodeName());
       System.out.println(application.item(i).getNodeName());
     }
 
 
 
   }catch(FactoryConfigurationError e){
     System.out.println("impossible de localiser une classe de construction");
   }
 }
 
 
    public static  void parcoursDocument(Node racine, String nom)
  {
    Element racTemp;
Attr a , b ,rac;
 
    if(racine.getNodeType()==1)
 
    {   if (nom.equals("interface"))
        { NamedNodeMap interf=racine.getAttributes() ;
            rac=(Attr)interf.item(0);
            if(rac.getValue().equals("Magic_MED"))
            { a=(Attr)interf.item(1);
                b=(Attr)interf.item(2);
                longeur = (int)(Float.parseFloat(a.getValue() )) ;
               largeur = (int)(Float.parseFloat(b.getValue() ) );
            }
 
 
        }
       // if(nom.equals("application")) System.out.println("c est la racine");
            }
    }
    static int longueur()
    {
        return(longeur);}
    static int largeur()
    { return(largeur);}
    static void affich()
    { System.out.println("*****************************"+longeur);
        System.out.println("*****************************"+largeur);
    }
    public static void main (String []args)throws Exception{
   XMLReadWrite xx=new XMLReadWrite();
 
   xx.xmlCdeRead("exemple.xml");
   }      
}


et voici les erreurs:

org.xml.sax.SAXParseException: Elément racine de document manquant.

at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3376)

at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3364)

at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:668)

at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)

at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)

at org.apache.crimson.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:185)

at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:124)

at XMLReadWrite.xmlCdeRead(XMLReadWrite.java:37)

at XMLReadWrite.main(XMLReadWrite.java:94)



s'il vous plait aider moi pour resoudre ce probleme
et merci