Example usage for org.apache.commons.digester Digester setNamespaceAware

List of usage examples for org.apache.commons.digester Digester setNamespaceAware

Introduction

In this page you can find the example usage for org.apache.commons.digester Digester setNamespaceAware.

Prototype

public void setNamespaceAware(boolean namespaceAware) 

Source Link

Document

Set the "namespace aware" flag for parsers we create.

Usage

From source file:com.projity.configuration.ConfigurationReader.java

public static ProvidesDigesterEvents readStream(InputStream stream, ProvidesDigesterEvents root) {
    ProvidesDigesterEvents result = null;
    Digester digester = new Digester();
    digester.setNamespaceAware(true); // this is so we can use the JADE parser instead which is faster

    digester.setValidating(false);/*from w  w w  .  ja  v a  2s. c  o m*/
    digester.push(root);
    root.addDigesterEvents(digester);

    try {
        result = (ProvidesDigesterEvents) digester.parse(stream);
    } catch (Exception e1) { //claur
        log.error("Error parsing reading/parsing field xml configuration file.");
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }
    return result;
}

From source file:com.liusoft.sc.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>RuleSet</code> used for parsing the xml.
 *///from w  ww.j  av  a  2 s. c  om
public static Digester newDigester(boolean xmlValidation, boolean xmlNamespaceAware, RuleSet rule) {
    Digester digester = new Digester();
    digester.setNamespaceAware(xmlNamespaceAware);
    digester.setValidating(xmlValidation);
    digester.setUseContextClassLoader(true);

    if (xmlValidation || xmlNamespaceAware) {
        configureSchema(digester);
    }

    schemaResolver = new SchemaResolver(digester);
    registerLocalSchema();

    digester.setEntityResolver(schemaResolver);
    if (rule != null) {
        digester.addRuleSet(rule);
    }

    return (digester);
}

From source file:cn.zhouyafeng.tomcat.util.modeler.modules.MbeansDescriptorsDigesterSource.java

private static Digester createDigester() {

    Digester digester = new Digester();
    digester.setNamespaceAware(false);
    digester.setValidating(false);/*www  .  j  a v a  2 s . c  o m*/
    URL url = Registry.getRegistry(null, null).getClass()
            .getResource("/org/apache/tomcat/util/modeler/mbeans-descriptors.dtd");
    digester.register("-//Apache Software Foundation//DTD Model MBeans Configuration File", url.toString());

    // Configure the parsing rules
    digester.addObjectCreate("mbeans-descriptors/mbean", "org.apache.tomcat.util.modeler.ManagedBean");
    digester.addSetProperties("mbeans-descriptors/mbean");
    digester.addSetNext("mbeans-descriptors/mbean", "add", "java.lang.Object");

    digester.addObjectCreate("mbeans-descriptors/mbean/attribute",
            "org.apache.tomcat.util.modeler.AttributeInfo");
    digester.addSetProperties("mbeans-descriptors/mbean/attribute");
    digester.addSetNext("mbeans-descriptors/mbean/attribute", "addAttribute",
            "org.apache.tomcat.util.modeler.AttributeInfo");

    digester.addObjectCreate("mbeans-descriptors/mbean/notification",
            "org.apache.tomcat.util.modeler.NotificationInfo");
    digester.addSetProperties("mbeans-descriptors/mbean/notification");
    digester.addSetNext("mbeans-descriptors/mbean/notification", "addNotification",
            "org.apache.tomcat.util.modeler.NotificationInfo");

    digester.addObjectCreate("mbeans-descriptors/mbean/notification/descriptor/field",
            "org.apache.tomcat.util.modeler.FieldInfo");
    digester.addSetProperties("mbeans-descriptors/mbean/notification/descriptor/field");
    digester.addSetNext("mbeans-descriptors/mbean/notification/descriptor/field", "addField",
            "org.apache.tomcat.util.modeler.FieldInfo");

    digester.addCallMethod("mbeans-descriptors/mbean/notification/notification-type", "addNotifType", 0);

    digester.addObjectCreate("mbeans-descriptors/mbean/operation",
            "org.apache.tomcat.util.modeler.OperationInfo");
    digester.addSetProperties("mbeans-descriptors/mbean/operation");
    digester.addSetNext("mbeans-descriptors/mbean/operation", "addOperation",
            "org.apache.tomcat.util.modeler.OperationInfo");

    digester.addObjectCreate("mbeans-descriptors/mbean/operation/descriptor/field",
            "org.apache.tomcat.util.modeler.FieldInfo");
    digester.addSetProperties("mbeans-descriptors/mbean/operation/descriptor/field");
    digester.addSetNext("mbeans-descriptors/mbean/operation/descriptor/field", "addField",
            "org.apache.tomcat.util.modeler.FieldInfo");

    digester.addObjectCreate("mbeans-descriptors/mbean/operation/parameter",
            "org.apache.tomcat.util.modeler.ParameterInfo");
    digester.addSetProperties("mbeans-descriptors/mbean/operation/parameter");
    digester.addSetNext("mbeans-descriptors/mbean/operation/parameter", "addParameter",
            "org.apache.tomcat.util.modeler.ParameterInfo");

    return digester;

}

From source file:de.mpg.escidoc.services.syndication.Feeds.java

/**
 * Unmarshalling of the feed definitions XML file on hand of the feeds digester rules   
 * @param rulesFileName is URI of the digester rules file 
 * @param feedsFileName is URI of the feed definitions file 
 * @return feed collection class//  w w w.j a v  a2  s. c  o m
 * @throws SyndicationException
 */
public static Feeds readFeedsFromXml(String rulesFileName, String feedsFileName) throws SyndicationException {
    URL rules = Feeds.class.getClassLoader().getResource(rulesFileName);

    Digester digester = DigesterLoader.createDigester(rules);
    digester.setNamespaceAware(false);

    Feeds fs = null;
    try {
        InputStream input = ResourceUtil.getResourceAsStream(feedsFileName, Feeds.class.getClassLoader());
        fs = (Feeds) digester.parse(input);
    } catch (Exception e) {
        throw new SyndicationException("Cannot parse: " + feedsFileName, e);
    }

    return fs;
}

From source file:com.sun.faces.generate.AbstractGenerator.java

/**
 * <p>Configure and return a <code>Digester</code> instance suitable for
 * use in the environment specified by our parameter flags.</p>
 *
 * @param dtd[] array of absolute pathnames of the DTDs to be registered (if any)
 *  and their corresponding public identifiers
 * @param design Include rules suitable for design time use in a tool
 * @param generate Include rules suitable for generating component,
 *  renderer, and tag classes/*  ww w . ja v  a 2  s.  c o  m*/
 * @param runtime Include rules suitable for runtime execution
 *
 * @exception MalformedURLException if a URL cannot be formed correctly
 */
protected static Digester digester(String dtd[], boolean design, boolean generate, boolean runtime)
        throws MalformedURLException {

    Digester digester = new Digester();

    // Configure basic properties
    digester.setNamespaceAware(false);
    digester.setUseContextClassLoader(true);
    digester.setValidating(true);

    // Configure parsing rules
    digester.addRuleSet(new FacesConfigRuleSet(design, generate, runtime));

    // Configure preregistered entities
    int i = 0;
    while (dtd.length > 0) {
        if (dtd[i] != null && dtd[i + 1] != null) {
            digester.register(dtd[i], (new File(dtd[i + 1])).toURL().toString());
        }
        i += 2;
        if (i >= dtd.length) {
            break;
        }
    }
    return (digester);

}

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);

    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);/*from  w  w  w  .j av  a  2s .  c om*/

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

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

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

public void testDigest() throws IOException, SAXException {

    Pages pages = new Pages();

    Digester digester = new Digester();
    digester.setNamespaceAware(true);
    digester.addRuleSet(new PageRuleSet());
    digester.addRuleSet(new PersonRuleSet());

    digester.push(pages);/*  w w  w  .jav a  2s . co m*/

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

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

From source file:net.jakubholy.jeeutils.jsfelcheck.beanfinder.jsf11.Jsf11FacesConfigXmlBeanFinder.java

protected Digester digester(boolean validateXml) {
    Digester digester = new Digester();

    digester.setNamespaceAware(false);
    digester.setUseContextClassLoader(true);
    digester.setValidating(validateXml);

    digester.addRuleSet(new FacesConfigRuleSet(false, false, true));

    for (int i = 0; i < DTD_INFO.length; i++) {
        URL url = getClass().getResource(DTD_INFO[i][0]);
        if (url != null) {
            digester.register(DTD_INFO[i][1], url.toString());
        } else {/*from  ww  w.j  av a2s  .  c  o m*/
            throw new RuntimeException("NO_DTD_FOUND_ERROR: " + DTD_INFO[i][1] + "," + DTD_INFO[i][0]);
        }

    }

    digester.push(new FacesConfigBean());

    return digester;
}

From source file:net.sf.jasperreports.engine.xml.JRXmlTemplateDigesterFactory.java

protected void configureDigester(JasperReportsContext jasperReportsContext, Digester digester)
        throws SAXException, ParserConfigurationException {
    digester.setNamespaceAware(true);
    digester.setRuleNamespaceURI(JRXmlConstants.JASPERTEMPLATE_NAMESPACE);

    boolean validating = JRPropertiesUtil.getInstance(jasperReportsContext)
            .getBooleanProperty(JRReportSaxParserFactory.COMPILER_XML_VALIDATION);

    digester.setErrorHandler(this);
    digester.setValidating(validating);/*w  w w . j a v a  2s  . com*/
    digester.setFeature("http://xml.org/sax/features/validation", validating);

    digester.addRuleSet(rules);
}

From source file:net.sibcolombia.sibsp.model.factory.VocabularyFactory.java

/**
 * Builds a Vocabulary from the supplied input stream
 * /*w  ww.j a v a 2s  .  co m*/
 * @param is For the XML
 * @return The extension
 */
public Vocabulary build(InputStream is) throws IOException, SAXException, ParserConfigurationException {
    Digester digester = new Digester(saxf.newSAXParser());
    digester.setNamespaceAware(true);
    digester.setXIncludeAware(false);
    digester.setRuleNamespaceURI(VOCABULARY_NAMESPACE);

    Vocabulary tv = new Vocabulary();
    digester.push(tv);

    // build the thesaurus
    digester.addCallMethod("*/thesaurus", "setTitle", 1);
    digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "title"));

    digester.addCallMethod("*/thesaurus", "setDescription", 1);
    digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "description"));

    digester.addCallMethod("*/thesaurus", "setLink", 1);
    digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "relation"));

    digester.addCallMethod("*/thesaurus", "setUriString", 1);
    digester.addRule("*/thesaurus", new CallParamNoNSRule(0, "URI"));

    // build the concept
    digester.addObjectCreate("*/concept", VocabularyConcept.class);

    digester.addCallMethod("*/concept", "setLink", 1);
    digester.addRule("*/concept", new CallParamNoNSRule(0, "relation"));

    digester.addCallMethod("*/concept", "setDescription", 1);
    digester.addRule("*/concept", new CallParamNoNSRule(0, "description"));

    digester.addCallMethod("*/concept", "setUri", 1);
    digester.addRule("*/concept", new CallParamNoNSRule(0, "URI"));

    digester.addCallMethod("*/concept", "setIdentifier", 1);
    digester.addRule("*/concept", new CallParamNoNSRule(0, "identifier"));

    // build the terms
    digester.addObjectCreate("*/preferred/term", VocabularyTerm.class);

    digester.addCallMethod("*/preferred/term", "setLang", 1);
    digester.addRule("*/preferred/term", new CallParamNoNSRule(0, "lang"));

    digester.addCallMethod("*/preferred/term", "setTitle", 1);
    digester.addRule("*/preferred/term", new CallParamNoNSRule(0, "title"));

    digester.addSetNext("*/preferred/term", "addPreferredTerm");

    // build alternative terms
    digester.addObjectCreate("*/alternative/term", VocabularyTerm.class);

    digester.addCallMethod("*/alternative/term", "setLang", 1);
    digester.addRule("*/alternative/term", new CallParamNoNSRule(0, "lang"));

    digester.addCallMethod("*/alternative/term", "setTitle", 1);
    digester.addRule("*/alternative/term", new CallParamNoNSRule(0, "title"));

    digester.addSetNext("*/alternative/term", "addAlternativeTerm");

    // add concept
    digester.addSetNext("*/concept", "addConcept");

    digester.parse(is);
    return tv;
}