Example usage for org.apache.commons.digester.xmlrules FromXmlRuleSet FromXmlRuleSet

List of usage examples for org.apache.commons.digester.xmlrules FromXmlRuleSet FromXmlRuleSet

Introduction

In this page you can find the example usage for org.apache.commons.digester.xmlrules FromXmlRuleSet FromXmlRuleSet.

Prototype

public FromXmlRuleSet(InputSource inputSource) 

Source Link

Document

Constructs a FromXmlRuleSet using the default DigesterRuleParser and rulesDigester.

Usage

From source file:com.discursive.jccook.xml.bean.XMLNamespaceDigest.java

public void testDigest() throws IOException, SAXException {

    Pages pages = new Pages();

    Digester digester = new Digester();
    digester.setNamespaceAware(true);/*from   w w w  . ja  va 2  s  .com*/

    digester.setRuleNamespaceURI("http://discursive.com/page");
    URL pageRules = getClass().getResource("./page-rules.xml");
    digester.addRuleSet(new FromXmlRuleSet(pageRules));

    digester.setRuleNamespaceURI("http://discursive.com/person");
    URL personRules = getClass().getResource("./person-rules.xml");
    digester.addRuleSet(new FromXmlRuleSet(personRules));

    digester.push(pages);

    InputStream input = getClass().getResourceAsStream("./content.xml");
    digester.parse(input);

    Page page = (Page) pages.getPages().get(0);
    System.out.println(page);
}

From source file:nl.nn.adapterframework.configuration.ConfigurationDigester.java

public Digester getDigester(Configuration configuration)
        throws SAXNotSupportedException, SAXNotRecognizedException {
    Digester digester = new Digester();
    digester.setUseContextClassLoader(true);
    digester.push(configuration);/*from  w w  w  .ja  v a  2  s . c  o m*/

    URL digesterRulesURL = ClassUtils.getResourceURL(this, getDigesterRules());
    FromXmlRuleSet ruleSet = new FromXmlRuleSet(digesterRulesURL);
    digester.addRuleSet(ruleSet);

    Rule attributeChecker = new AttributeCheckingRule();
    digester.addRule("*/jmsRealms", attributeChecker);
    digester.addRule("*/jmsRealm", attributeChecker);
    digester.addRule("*/sapSystem", attributeChecker);
    digester.addRule("*/adapter", attributeChecker);
    digester.addRule("*/pipeline", attributeChecker);
    digester.addRule("*/errorMessageFormatter", attributeChecker);
    digester.addRule("*/receiver", attributeChecker);
    digester.addRule("*/sender", attributeChecker);
    digester.addRule("*/listener", attributeChecker);
    digester.addRule("*/postboxSender", attributeChecker);
    digester.addRule("*/postboxListener", attributeChecker);
    digester.addRule("*/errorSender", attributeChecker);
    digester.addRule("*/messageLog", attributeChecker);
    digester.addRule("*/inProcessStorage", attributeChecker);
    digester.addRule("*/errorStorage", attributeChecker);
    digester.addRule("*/pipe", attributeChecker);
    digester.addRule("*/readerFactory", attributeChecker);
    digester.addRule("*/manager", attributeChecker);
    digester.addRule("*/manager/flow", attributeChecker);
    digester.addRule("*/recordHandler", attributeChecker);
    digester.addRule("*/resultHandler", attributeChecker);
    digester.addRule("*/forward", attributeChecker);
    digester.addRule("*/child", attributeChecker);
    digester.addRule("*/param", attributeChecker);
    digester.addRule("*/pipeline/exits/exit", attributeChecker);
    digester.addRule("*/scheduler/job", attributeChecker);
    digester.addRule("*/locker", attributeChecker);
    digester.addRule("*/directoryCleaner", attributeChecker);
    digester.addRule("*/statistics", attributeChecker);
    digester.addRule("*/handler", attributeChecker);
    digester.addRule("*/cache", attributeChecker);
    digester.addRule("*/inputValidator", attributeChecker);
    digester.addRule("*/outputValidator", attributeChecker);
    digester.addRule("*/inputWrapper", attributeChecker);
    digester.addRule("*/outputWrapper", attributeChecker);
    if (MonitorManager.getInstance().isEnabled()) {
        MonitorManager.getInstance().setDigesterRules(digester);
    }

    boolean validation = AppConstants.getInstance().getBoolean(CONFIGURATION_VALIDATION_KEY, false);
    if (validation) {
        digester.setValidating(true);
        digester.setNamespaceAware(true);
        digester.setProperty("http://java.sun.com/xml/jaxp/properties/schemaLanguage",
                "http://www.w3.org/2001/XMLSchema");
        digester.setProperty("http://java.sun.com/xml/jaxp/properties/schemaSource", "AdapterFramework.xsd");
        XmlErrorHandler xeh = new XmlErrorHandler();
        digester.setErrorHandler(xeh);
    }

    return digester;
}

From source file:org.cauldron.tests.util.DigesterContext.java

public static JAXBContext createContext(String path, ClassLoader cl) throws JAXBException {
    URL url = cl.getResource(path.replace('.', '/') + "/rules.xml");
    DigesterContext dc = new DigesterContext();
    dc.rules = new FromXmlRuleSet(url);
    return dc;/* w  w w. j a  v  a  2  s  .c om*/
}