The no-args org.xml.sax.helpers.XMLReaderFactory.createXMLReader() method fails (throws a SAXException) unless the org.xml.sax.driver property is set. If this property is not set, this methoid should not fail. Instead it should fall back to the standard Xerces parser, probably org.xml.parsers.SAXParser. This is in accordance with the SAX documentaiton for this class (http://sax.sourceforge.net/apidoc/org/xml/sax/helpers/XMLReaderFactory.html) which states: Note to Distributions bundled with parsers: You should modify the implementation of the no-arguments createXMLReader to handle cases where the external configuration mechanisms aren't set up. That method should do its best to return a parser when one is in the class path, even when nothing bound its class name to org.xml.sax.driver so those configuration mechanisms would see it.