logo       

Validation par java/DOM d'un flux xml (XSD, DTD): msg#00030

Subject: Validation par java/DOM d'un flux xml (XSD, DTD)
Bonjour,

J'ai bien réussi à valider un fichier xml avec un
fichier xsd sans que dans le fichier xml je fasse
référence au fichier xsd.
Par contre pour une dtd, impossible de valider le
fichier xml. Seul moyen, placer la déclaration 
DOCTYPE dans le fichier xml puis lancer la validation
sans préciser le fichier dtd, celui déclarer dans le
xml étant pris par défaut par la validation. 
J'aimerais pourtant que les deux fichiers soient
complétement dissocier et que seul l'application
prenne en entrée le fichier xml et dtd.

Est-ce que tout ça est normal ????
Partie principal de mon prog : 
*****************************************************
public static Object validXMLWithDOM(File xmlFile,
File xsdFile){
                Object returnedObject = null;

                DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
                dbf.setIgnoringComments(true);
                dbf.setNamespaceAware(true);
                dbf.setValidating(true);
                
                if(xsdFile!=null){
                        dbf.setAttribute(JAXP_SCHEMA_LANGUAGE,
W3C_XML_SCHEMA);
                        dbf.setAttribute(JAXP_SCHEMA_SOURCE, xsdFile);
                }
                try {
                        // Parsage du fichier XML avec DOM
                        DocumentBuilder db = dbf.newDocumentBuilder();
                        EFactureHandler errorHandler = new
EFactureHandler();
                        db.setErrorHandler(errorHandler);
                        // Parsing
                        Document doc = db.parse(xmlFile);
                        //PAS D'ERREUR (on renvoi le document parsé)
                        Object errors = errorHandler.getErrors();
                        if(errors==null){       
                                returnedObject = doc;
                        }
                        //ERREUR(S) (on renvoi le(s) erreurs)
                        //SAXParseException de type : 
                        // - Erreur fatal
                        // - Erreur
                        // - Warning
                        else{
                                returnedObject = errors;
                        }
                } catch (ParserConfigurationException pcee) {
                        returnedObject = pcee;
                } catch (IOException ioe) {
                        returnedObject = ioe;
                } catch (SAXException saxe) {
                        returnedObject = saxe;
                }
                
                return returnedObject;
        }

*****************************************************
Merci


        

        
                
___________________________________________________________________________ 
Yahoo! Mail réinvente le mail ! Découvrez le nouveau Yahoo! Mail et son 
interface révolutionnaire.
http://fr.mail.yahoo.com



Ruby Jobs
Java Jobs
Jobs in California
more...
what
job title, keywords
where
city, state, zip
jobs by job search
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
linux.drivers.b...    security.firewa...    mathematics.lps...    web.zope.plone....    x25/2005-12/msg...    culture.tv.sout...    pld.user.polish...    qplus.devel/200...    version-control...    openbsd.bugs/20...    distributions.g...    gnu.chess.bugs/...    redhat.release....    emacs.bugs/2002...    java.bio.genera...    ataraid/2005-01...    finance.moneyda...    hardware.microc...    netbsd.ports.xe...    bug-tracking.gn...    text.xml.saxon....    kde.linux/2002-...   
Home | blog view | USPTO Patent Archive | advertise | OSDir is an inevitable website. super tiny logo