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 :

Parser DOM et Ignorer la DTD


Sujet :

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

Vue hybride

BaBeuH Parser DOM et Ignorer la DTD 17/08/2006, 11h28
bulbo Que tu valides ou pas ton... 29/08/2006, 16h55
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 162
    Par défaut Parser DOM et Ignorer la DTD
    Salut,

    Voilà, je souhaiterai récupérer uniquement le nom de la DTD des fichiers XML que je parse, sans m'occuper du contenu de la DTD. Je rencontre un problème lorsque je charge le document avec le parser DOM, le parser cherche à analyser la DTD et lance une Exception car il ne trouve pas la DTD (java.io.FileNotFoundException).
    J'ai essayé de désactiver la validation, mais sans succès, voici mon 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
     
     
    public static String getDTD(String _fichier)
        {
            try
            {
                File ficXML = new File(_fichier);
     
                // Charger le document
                FileInputStream _xml_input_file = new FileInputStream(_fichier);
     
                //instancier le contrcuteur de parseurs
                DocumentBuilderFactory _factory = DocumentBuilderFactory.newInstance();
     
                //ignorer les commentaires dans les fichiers XML parsè±?
                _factory.setValidating(false);
     
                // cr褲 un parseur
                DocumentBuilder _builder = _factory.newDocumentBuilder();
     
                // Charger le document
                Document doc = _builder.parse(_xml_input_file);
     
                if (doc.getDoctype()!=null)
                {
                    return doc.getDoctype().getName();
                }
                else return "";
            }
            catch (Exception e)
            {
                e.printStackTrace();
                return "";
            }
     
        }
    J'aimerai uniquement obtenir le contenu de <!DOCTYPE ...> pour effectuer d'autres traitements par la suite (XSL associée à la DTD).

    Merci d'avance

    ++

  2. #2
    Rédacteur
    Avatar de bulbo
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2004
    Messages : 1 259
    Par défaut
    Que tu valides ou pas ton document avec la DTD le parser va essayer d'acceder aux entites externes.

    Si tu veux eviter ca il faut que tu fournisse ton propre EntityResolver en plus ca te permet de recuperer le nom de la DTD.

    Bulbo
    [Java] [NetBeans] [CVS]
    La FAQ Java
    Merci de ne pas me poser de questions techniques par MP.

Discussions similaires

  1. [DOM] Styles ignorés après un import dans le dom
    Par lescarphe dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 04/12/2007, 12h44
  2. JRXmlDataSource - Parser DOM
    Par David Fleury dans le forum Jasper
    Réponses: 3
    Dernier message: 19/02/2007, 21h58
  3. [parsers] DOM/SAX:oui mais moi je fais du XSL
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 24/05/2006, 19h10
  4. [SAX] Parser XML et validation avec dtd
    Par arno00020 dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 22/11/2005, 17h30
  5. librairie parser DOM et SAX
    Par billy67 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 10/11/2005, 18h02

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