XML Schema - Validation mit Java

  • hy!

    hat jemand schon von euch eine XML Datei mit XercesJ geparst und dabei gegen ein eigenes Schema validiert?

    Bei mir funktioniert es wenn ich XercesJ händisch von der Kommandozeile aufrufe, doch wenn ich es im Programm verwende geht es nicht.

    Four stages of acceptance:
    1.) this is worthless nonsense
    2.) this is interesting, but perverse, point of view
    3.) this is true, but quite unimportant
    4.) I alwas said so
    J.B.S. Haldane

  • Ich hab es zwar auch einfach manuell und nie in einem Programm verwendet aber wenn du das Codestück postest könnte ich vielleicht helfen.

    The idea behind this technique is surprisingly simple: just go ahead and do whatever you want to without paying attention to what anybody else is doing. If there is a problem, worry about it later. (Many politicians use this algorithm, too) -- A. S. Tanenbaum, M. v. Steen, Distributed Systems

  • Four stages of acceptance:
    1.) this is worthless nonsense
    2.) this is interesting, but perverse, point of view
    3.) this is true, but quite unimportant
    4.) I alwas said so
    J.B.S. Haldane

  • Ich lasse so validieren:

    Code
    XMLReader reader=XMLReaderFactory.createXMLReader("org.apache.xerces.parsers.SAXParser");
    InputSource in = new InputSource(new FileInputStream(new File("a.xml")));
    reader.setContentHandler(aContentHandler);
    [b] reader.setFeature("http://xml.org/sax/features/validation", true);[/b]
    reader.parse(in);
  • wenn ich den DefaultHandler als Contenthandler nehm, bekomm ich folgende Fehlermeldungen:

    [Error] :2:9: Document is invalid: no grammar found.
    [Error] :2:9: Document root element "figures", must match DOCTYPE root "null".

    Four stages of acceptance:
    1.) this is worthless nonsense
    2.) this is interesting, but perverse, point of view
    3.) this is true, but quite unimportant
    4.) I alwas said so
    J.B.S. Haldane

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!