List of usage examples for org.apache.commons.digester Digester getFactory
public SAXParserFactory getFactory()
From source file:org.apache.catalina.startup.DigesterFactory.java
/** * Create a <code>Digester</code> parser. * @param xmlValidation turn on/off xml validation * @param xmlNamespaceAware turn on/off namespace validation * @param rule an instance of <code>Rule</code used for parsing the xml. *//* www .j av a 2 s . c o m*/ public static Digester newDigester(boolean xmlValidation, boolean xmlNamespaceAware, RuleSet rule) { URL url = null; Digester digester = new Digester(); digester.setNamespaceAware(xmlNamespaceAware); digester.setValidating(xmlValidation); String parserName = digester.getFactory().getClass().getName(); if (parserName.indexOf("xerces") != -1) { digester = patchXerces(digester); } schemaResolver = new SchemaResolver(digester); if (xmlValidation) { // Xerces 2.3 and up has a special way to turn on validation // for both DTD and Schema if (parserName.indexOf("xerces") != -1) { turnOnXercesValidation(digester); } else { turnOnValidation(digester); } } registerLocalSchema(); digester.setEntityResolver(schemaResolver); if (rule != null) digester.addRuleSet(rule); return (digester); }