Bonjour, j'utilise le code suivant trouvé sur Internet. Le code fonctionne parfaitement. J'aimerais juste détecter et afficher le numéro de la ligne lorsque le fichier xml n'est pas compatible avec le chemin. Actuellement, le script me dit qu'il y a une erreur mais ne m'indique pas où ce qui peut être gênant lors qu'il y a un gros fichier xml en entrée.

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
 
try {
	// 1. Lookup a factory for the W3C XML Schema language
        SchemaFactory factory = 
        SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
 
        // 2. Compile the schema. 
        // Here the schema is loaded from a java.io.File, but you could use 
        // a java.net.URL or a javax.xml.transform.Source instead.
        //File schemaLocation = new File("/opt/xml/docbook/xsd/docbook.xsd");
        File schemaLocation = new File("order.xsd");
        Schema schema;
 
        schema = factory.newSchema(schemaLocation);
 
 
        // 3. Get a validator from the schema.
        Validator validator = schema.newValidator();
 
        // 4. Parse the document you want to check.
        Source source = new StreamSource("order.xml");
 
        // 5. Check the document
        try {
            validator.validate(source);
            System.out.println("order.xml" + " is valid.");
        }
        catch (SAXException ex) {
            System.out.println("order.xml" + " is not valid because ");            
            System.out.println(ex.getMessage());
        } catch (IOException e) {
		// TODO Bloc catch auto-généré
		e.printStackTrace();
	}
Merci pour votre aide.

B. Mathieu