OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] SAX parser validation with JRE 1.5

[ Lists Home | Date Index | Thread Index ]

We do set the handlers elsewhere. Here's the code:

    protected void configureReader(XMLReader reader, DefaultHandler handler)
    {
        reader.setContentHandler(handler);
        reader.setDTDHandler(handler);
        reader.setErrorHandler(this);
        reader.setEntityResolver(this);

        //  Set these features explicitly as opposed to relying on their
        //  default values to deal with differences between various
        //  crimson and xerces releases.
        //
        setReaderFeature(reader, "http://xml.org/sax/features/validation", true);
        setReaderFeature(reader, "http://xml.org/sax/features/namespaces", true);
        setReaderFeature(reader, "http://xml.org/sax/features/namespace-prefixes", false);

        //  Register for lexical events so that we are notified of
        //  comments.
        //
        if (!setReaderProperty(reader, "http://xml.org/sax/properties/lexical-handler", this))
        {
            //  If the previous property "set" failed, try the same operation
            //  with a different version of the property name.
            //
            setReaderProperty(reader, "http://xml.org/sax/handlers/LexicalHandler", this);
        }
    }

I tried using XMLReaderFactory and got the same results (no validation in JRE 1.5). For JRE 1.4 we use org.apache.crimson.parser.XMLReaderImpl. For 1.5 we use com.sun.org.apache.xerces.internal.parsers.SAXParser. This seems to be some difference between crimson and xerces.

-rich

Elliotte Harold wrote:
In do see several problems in your code, the biggest of which is that you're using SAXParser and SAXParserFactory and making the same mistake almost everyone who uses them makes. Not your fault, though. they're poorly designed and virtually guaranteed to be used incorrectly. Just use XMLReader and XMLReaderFactory instead and those mistake will take care of themselves.

The specific problem you're having may or may not be related to that, but it looks like a failure to supply an ErrorHandler, so validation is likely being performed, but no error messages are reported.





 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS