Example usage for org.apache.commons.digester.xmlrules DigesterLoader createDigester

List of usage examples for org.apache.commons.digester.xmlrules DigesterLoader createDigester

Introduction

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

Prototype

public static Digester createDigester(URL rulesXml) 

Source Link

Document

Creates a new digester and initializes it from the specified XML file

Usage

From source file:org.ajax4jsf.bean.tree.TreeTestBean.java

public synchronized List<javax.swing.tree.TreeNode> getSwingTreeNodes() {
    if (null == swingNodes) {
        Digester digester = DigesterLoader.createDigester(getClass().getResource("/swing-digester-rules.xml"));
        List<javax.swing.tree.TreeNode> nodes = new ArrayList<javax.swing.tree.TreeNode>();
        digester.push(nodes);/*from w  ww. j a  v  a  2 s  .c o m*/
        try {
            digester.parse(getClass().getResourceAsStream("/audio-library.xml"));
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        swingNodes = nodes;
    }

    return swingNodes;
}

From source file:org.apache.jackrabbit.standalone.cli.CommandLineFactory.java

/**
 * parses the configuration file//w w  w.  j av  a  2 s .  c  o  m
 * @throws ConfigurationException
 *         an <code>Exception</code> occurs while parsing
 */
private void init() throws ConfigurationException {
    try {
        // Configure Digester from XML ruleset
        URL rulesFile = getClass().getResource(COMMAND_LINE_RULES_FILE);
        URL clFile = getClass().getResource(COMMAND_LINE_FILE);

        // init digester
        Digester digester = DigesterLoader.createDigester(rulesFile);

        // Push empty List onto Digester's Stack
        List cls = new ArrayList();
        digester.push(cls);

        // Parse the XML document
        InputStream input = clFile.openStream();
        digester.parse(input);
        input.close();

        // Add to cache
        Iterator iter = cls.iterator();
        while (iter.hasNext()) {
            CommandLine cl = (CommandLine) iter.next();
            cache.put(cl.getName(), cl);
            // Add to alias cache
            Iterator aliasIt = cl.getAlias().iterator();
            while (aliasIt.hasNext()) {
                String aliasName = (String) aliasIt.next();
                if (alias.containsKey(aliasName)) {
                    throw new ConfigurationException("exception.alias.already.in.use",
                            new String[] { aliasName, cl.getName() });
                }
                alias.put(aliasName, cl);
            }
        }
    } catch (IOException e) {
        throw new ConfigurationException(e.getLocalizedMessage());
    } catch (SAXException e) {
        throw new ConfigurationException(e.getLocalizedMessage());
    }
}

From source file:org.fanhongtao.xml.DigesterUtils.java

public static Object parse(Object obj, InputStream inputStream, URL rulesUrl) throws IOException, SAXException {
    Digester digester = DigesterLoader.createDigester(rulesUrl);
    digester.push(obj);//from   ww  w .j  a va  2s  .  c o  m
    digester.setValidating(false);
    return digester.parse(inputStream);
}

From source file:org.kuali.kfs.module.ar.batch.CustomerInvoiceWriteoffBatchDigesterTest.java

/**
 * @return Rules loaded from the appropriate XML file
 *//*from  w  w  w . j ava  2  s.  c  o m*/
private Rules loadRules(String digestorRulesFileName) {
    // locate Digester rules
    ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
    URL rulesUrl = classLoader.getResource(digestorRulesFileName);
    if (rulesUrl == null) {
        throw new RuntimeException("unable to locate digester rules file " + digestorRulesFileName);
    }

    // create and init digester
    Digester digester = DigesterLoader.createDigester(rulesUrl);

    return digester.getRules();
}

From source file:org.kuali.kfs.sys.batch.XmlBatchInputFileTypeBase.java

/**
 * @return Rules loaded from the appropriate XML file
 *//*from  w  w w  .  ja va 2 s.com*/
protected Rules loadRules(String digestorRulesFileName) {
    // locate Digester rules
    ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
    URL rulesUrl = classLoader.getResource(digestorRulesFileName);
    if (rulesUrl == null) {
        throw new RuntimeException("unable to locate digester rules file " + digestorRulesFileName);
    }

    // create and init digester
    Digester digester = DigesterLoader.createDigester(rulesUrl);

    return digester.getRules();
}

From source file:org.latticesoft.util.common.MiscUtil.java

/**
 * Builds an hierarchy of object(s) from a rule xml file and
 * a input xml file. The objects are created using digester
 * library.//from w  w w  .  java  2 s .c  om
 * @param rules the digester rules inputstream
 * @param input the input xml file to be parsed
 * @param useCatalogResolver whether to use the catalog resolver or not
 * @return the object created
 * @see Apache Digester library java doc
 */
public static Object buildObjectFromXml(URL rules, InputStream input, boolean useCatalogResolver) {
    Object retVal = null;
    try {
        Digester d = DigesterLoader.createDigester(rules);
        if (useCatalogResolver) {
            CatalogResolver cr = new CatalogResolver();
            d.setEntityResolver(cr);
        }
        /*d.setValidating(true);
        d.setNamespaceAware(true);
        d.setProperty("http://java.sun.com/xml/jaxp/properties/schemaLanguage", "http://www.w3.org/2001/XMLSchema");
        d.setErrorHandler(new org.xml.sax.ErrorHandler() {
        });//*/
        retVal = d.parse(input);
    } catch (IOException ioe) {
        if (log.isErrorEnabled()) {
            log.error("Error!", ioe);
        }
    } catch (SAXException saxe) {
        if (log.isErrorEnabled()) {
            log.error("Error!", saxe);
        }
    } catch (Exception e) {
        if (log.isErrorEnabled()) {
            log.error("Error!", e);
        }
    }
    return retVal;
}

From source file:org.safehaus.penrose.config.PenroseConfigReader.java

public PenroseConfig read(File path) throws Exception {

    log.debug("Loading Penrose configuration: " + path);

    PenroseConfig penroseConfig = new PenroseConfig();

    Reader reader = new FileReader(path);

    Digester digester = DigesterLoader.createDigester(digesterUrl);
    digester.setEntityResolver(this);
    digester.setValidating(true);// w w w.ja  v  a2 s .c  o m
    digester.setClassLoader(classLoader);
    digester.push(penroseConfig);
    digester.parse(reader);

    return penroseConfig;
}

From source file:org.safehaus.penrose.federation.FederationReader.java

public FederationReader() {

    ClassLoader cl = getClass().getClassLoader();

    dtdUrl = cl.getResource("org/safehaus/penrose/federation/federation.dtd");
    digesterUrl = cl.getResource("org/safehaus/penrose/federation/federation-digester-rules.xml");

    digester = DigesterLoader.createDigester(digesterUrl);
    digester.setEntityResolver(this);
    digester.setValidating(true);/*from ww w  .j a va 2  s .c o m*/
    digester.setClassLoader(cl);
}

From source file:org.safehaus.penrose.log.log4j.Log4jConfigReader.java

public Log4jConfig read(File file) throws Exception {

    Reader reader = new FileReader(file);

    Log4jConfig config = new Log4jConfig();

    ClassLoader cl = getClass().getClassLoader();
    URL ruleUrl = cl.getResource("org/safehaus/penrose/log/log4j/log4j-digester-rules.xml");

    Digester digester = DigesterLoader.createDigester(ruleUrl);
    digester.setEntityResolver(this);

    digester.setValidating(false);//from  w  ww.j  a va 2 s.c  om
    digester.setClassLoader(cl);
    digester.push(config);
    digester.parse(reader);

    reader.close();

    return config;
}

From source file:org.safehaus.penrose.partition.PartitionReader.java

public PartitionReader() {

    ClassLoader cl = getClass().getClassLoader();

    dtdUrl = cl.getResource("org/safehaus/penrose/partition/partition.dtd");
    digesterUrl = cl.getResource("org/safehaus/penrose/partition/partition-digester-rules.xml");

    digester = DigesterLoader.createDigester(digesterUrl);
    digester.setEntityResolver(this);
    digester.setValidating(true);//w  ww. java  2  s . c  o  m
    digester.setClassLoader(cl);
}