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 :

Validation fichier XML - détection ligne en erreur


Sujet :

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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Developpeur
    Inscrit en
    Novembre 2005
    Messages
    42
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : Novembre 2005
    Messages : 42
    Par défaut Validation fichier XML - détection ligne en erreur
    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

  2. #2
    Membre chevronné
    Inscrit en
    Juillet 2006
    Messages
    534
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 534
    Par défaut
    Il faut que tu utilises ton propre handler pour gerer ces erreurs au lieu de DefaultHandler du parseur.

Discussions similaires

  1. validation fichier XML /XSD
    Par ammah dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 04/06/2009, 15h59
  2. [JDOM] Validation fichier XML avec DTD grace à JDOM ?
    Par ederf dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 20/04/2009, 12h06
  3. modifier fichier xml en ligne
    Par xeo dans le forum ASP.NET
    Réponses: 2
    Dernier message: 17/07/2007, 15h32
  4. [DTD] Valider fichier xml avec une DTD externe
    Par Tail dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 26/06/2006, 18h14
  5. Valider fichier XML : problème avec la DTD
    Par SkIllz2k dans le forum Valider
    Réponses: 2
    Dernier message: 26/04/2005, 17h15

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