Java Code Examples for org.apache.commons.digester.Digester#setValidating()

The following examples show how to use org.apache.commons.digester.Digester#setValidating() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ClientCertificateDigester.java    From uyuni with GNU General Public License v2.0 6 votes vote down vote up
private static void configureDigester(Digester digester) {
    digester.setValidating(false);

    digester.addObjectCreate("params", ClientCertificate.class);
    digester.addObjectCreate("*/param/value/struct/member/", Member.class);
    digester.addCallMethod("*/param/value/struct/member/name",
            "setName", 0);
    digester.addCallMethod("*/param/value/struct/member/value/string",
            "addValue", 0);
    digester.addObjectCreate("*/param/value/struct/member/value/array",
            ArrayList.class);
    digester.addCallMethod(
            "*/param/value/struct/member/value/array/data/value/string",
            "add", 0);
    digester.addSetNext("*/param/value/struct/member/value/array",
            "setValues");
    digester.addSetNext("*/param/value/struct/member", "addMember");
}
 
Example 2
Source File: ManifestFactory.java    From spacewalk with GNU General Public License v2.0 6 votes vote down vote up
private void parseURL(URL u) {
    Digester d = new Digester();
    d.setValidating(false);

    d.push(this);
    d.addObjectCreate("factory/template", HashMap.class);
    d.addRule("factory/template", new AttributeCopyRule());
    d.addSetNext("factory/template", "addFactoryTemplate");

    try {
        d.parse(u.openStream());
    }
    catch (Exception e) {
        throw new ManifestFactoryParseException("Unable to parse " +
                                                builder.getManifestFilename(), e);
    }
}
 
Example 3
Source File: ClientCertificateDigester.java    From spacewalk with GNU General Public License v2.0 6 votes vote down vote up
private static void configureDigester(Digester digester) {
    digester.setValidating(false);

    digester.addObjectCreate("params", ClientCertificate.class);
    digester.addObjectCreate("*/param/value/struct/member/", Member.class);
    digester.addCallMethod("*/param/value/struct/member/name",
            "setName", 0);
    digester.addCallMethod("*/param/value/struct/member/value/string",
            "addValue", 0);
    digester.addObjectCreate("*/param/value/struct/member/value/array",
            ArrayList.class);
    digester.addCallMethod(
            "*/param/value/struct/member/value/array/data/value/string",
            "add", 0);
    digester.addSetNext("*/param/value/struct/member/value/array",
            "setValues");
    digester.addSetNext("*/param/value/struct/member", "addMember");
}
 
Example 4
Source File: ManifestFactory.java    From uyuni with GNU General Public License v2.0 6 votes vote down vote up
private void parseURL(URL u) {
    Digester d = new Digester();
    d.setValidating(false);

    d.push(this);
    d.addObjectCreate("factory/template", HashMap.class);
    d.addRule("factory/template", new AttributeCopyRule());
    d.addSetNext("factory/template", "addFactoryTemplate");

    try {
        d.parse(u.openStream());
    }
    catch (Exception e) {
        throw new ManifestFactoryParseException("Unable to parse " +
                                                builder.getManifestFilename(), e);
    }
}
 
Example 5
Source File: JRXmlTemplateDigesterFactory.java    From jasperreports with GNU Lesser General Public License v3.0 5 votes vote down vote up
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);
	digester.setFeature("http://xml.org/sax/features/validation", validating);

	digester.addRuleSet(rules);
}
 
Example 6
Source File: NavDigester.java    From uyuni with GNU General Public License v2.0 5 votes vote down vote up
/**
 * buildTree, method to take a url and parse the contents
 * into a NavTree
 * @param url the file to parse
 * @return NavTree the tree represented by the file
 * @throws Exception if something breaks. XXX: fix to be tighter
 */
public static NavTree buildTree(URL url) throws Exception {
    if (url == null) {
        throw new IllegalArgumentException("URL is null, your definition tag " +
                "probably points to a non existing file.");
    }
    Digester digester = new Digester();
    digester.setValidating(false);

    digester.addObjectCreate("rhn-navi-tree", NavTree.class);
    digester.addSetProperties("rhn-navi-tree");
    digester.addSetProperties("rhn-navi-tree",
                              "acl_mixins",
                              "aclMixins");

    digester.addObjectCreate("*/rhn-tab", NavNode.class);
    digester.addSetProperties("*/rhn-tab",
                              "target",
                              "target");
    digester.addSetProperties("*/rhn-tab",
                              "font-icon",
                              "icon");

    digester.addCallMethod("*/rhn-tab",
                           "addPrimaryURL",
                           1);
    digester.addCallParam("*/rhn-tab",
                          0,
                          "url");

    digester.addCallMethod("*/rhn-tab/rhn-tab-url",
                           "addURL",
                           0);
    digester.addCallMethod("*/rhn-tab/rhn-tab-directory",
                           "addDirectory",
                           0);

    digester.addSetNext("*/rhn-tab", "addNode");
    return (NavTree)digester.parse(url.openStream());
}
 
Example 7
Source File: StatsManagerImpl.java    From sakai with Educational Community License v2.0 5 votes vote down vote up
private PrefsData parseSitePrefs(InputStream input) throws Exception{
	Digester digester = new Digester();
	digester.setValidating(false);

	digester = DigesterUtil.configurePrefsDigester(digester);

	return (PrefsData) digester.parse( input );
}
 
Example 8
Source File: DigesterUtil.java    From sakai with Educational Community License v2.0 5 votes vote down vote up
public static List<ToolInfo> parseToolEventsDefinition(InputStream input) throws Exception{
	Digester digester = new Digester();
    digester.setValidating(false);
    
    digester = configureToolEventsDefDigester("", digester);

    // eventParserTip tag
    EventParserTipFactoryImpl eventParserTipFactoryImpl = new EventParserTipFactoryImpl();
    digester.addFactoryCreate("toolEventsDef/tool/eventParserTip", eventParserTipFactoryImpl);
    digester.addSetNestedProperties("toolEventsDef/tool/eventParserTip");
    digester.addSetNext("toolEventsDef/tool/eventParserTip", "addEventParserTip" );
    
    return (List<ToolInfo>) digester.parse( input );
}
 
Example 9
Source File: XmlBatchInputFileTypeBase.java    From kfs with GNU Affero General Public License v3.0 5 votes vote down vote up
/**
 * @return fully-initialized Digester used to process entry XML files
 */
protected Digester buildDigester(String schemaLocation, String digestorRulesFileName) {
    Digester digester = new Digester();
    digester.setNamespaceAware(false);
    digester.setValidating(true);
    digester.setErrorHandler(new XmlErrorHandler());
    digester.setSchema(schemaLocation);

    Rules rules = loadRules(digestorRulesFileName);

    digester.setRules(rules);

    return digester;
}
 
Example 10
Source File: CustomerLoadDigesterTest.java    From kfs with GNU Affero General Public License v3.0 5 votes vote down vote up
/**
 * @return fully-initialized Digester used to process entry XML files
 */
private Digester buildDigester(String schemaLocation, String digestorRulesFileName) {
    Digester digester = new Digester();
    digester.setNamespaceAware(false);
    digester.setValidating(true);
    digester.setErrorHandler(new XmlErrorHandler());
    digester.setSchema(schemaLocation);

    Rules rules = loadRules(digestorRulesFileName);

    digester.setRules(rules);

    return digester;
}
 
Example 11
Source File: CustomerInvoiceWriteoffBatchDigesterTest.java    From kfs with GNU Affero General Public License v3.0 5 votes vote down vote up
/**
 * @return fully-initialized Digester used to process entry XML files
 */
private Digester buildDigester(String schemaLocation, String digestorRulesFileName) {
    Digester digester = new Digester();
    digester.setNamespaceAware(false);
    digester.setValidating(true);
    digester.setErrorHandler(new XmlErrorHandler());
    digester.setSchema(schemaLocation);

    Rules rules = loadRules(digestorRulesFileName);

    digester.setRules(rules);

    return digester;
}
 
Example 12
Source File: StatsManagerImpl.java    From sakai with Educational Community License v2.0 5 votes vote down vote up
private PrefsData parseSitePrefs(InputStream input) throws Exception{
	Digester digester = new Digester();
	digester.setValidating(false);

	digester = DigesterUtil.configurePrefsDigester(digester);

	return (PrefsData) digester.parse( input );
}
 
Example 13
Source File: DigesterUtil.java    From sakai with Educational Community License v2.0 5 votes vote down vote up
public static List<ToolInfo> parseToolEventsDefinition(InputStream input) throws Exception{
	Digester digester = new Digester();
    digester.setValidating(false);
    
    digester = configureToolEventsDefDigester("", digester);

    // eventParserTip tag
    EventParserTipFactoryImpl eventParserTipFactoryImpl = new EventParserTipFactoryImpl();
    digester.addFactoryCreate("toolEventsDef/tool/eventParserTip", eventParserTipFactoryImpl);
    digester.addSetNestedProperties("toolEventsDef/tool/eventParserTip");
    digester.addSetNext("toolEventsDef/tool/eventParserTip", "addEventParserTip" );
    
    return (List<ToolInfo>) digester.parse( input );
}
 
Example 14
Source File: ValidatorResources.java    From lams with GNU General Public License v2.0 5 votes vote down vote up
/**
 *  Initialize the digester.
 */
private Digester initDigester() {
    URL rulesUrl = this.getClass().getResource(VALIDATOR_RULES);
    if (rulesUrl == null) {
        // Fix for Issue# VALIDATOR-195
        rulesUrl = ValidatorResources.class.getResource(VALIDATOR_RULES);
    }
    if (getLog().isDebugEnabled()) {
        getLog().debug("Loading rules from '" + rulesUrl + "'");
    }
    Digester digester = DigesterLoader.createDigester(rulesUrl);
    digester.setNamespaceAware(true);
    digester.setValidating(true);
    digester.setUseContextClassLoader(true);

    // Add rules for arg0-arg3 elements
    addOldArgRules(digester);

    // register DTDs
    for (int i = 0; i < REGISTRATIONS.length; i += 2) {
        URL url = this.getClass().getResource(REGISTRATIONS[i + 1]);
        if (url != null) {
            digester.register(REGISTRATIONS[i], url.toString());
        }
    }
    return digester;
}
 
Example 15
Source File: ConnectionDescriptorManager.java    From jsqsh with Apache License 2.0 4 votes vote down vote up
private boolean load(InputStream in, String filename) {

        String path;
        Digester digester = new Digester();
        digester.setValidating(false);
        
        path = "connections/connection";
        digester.addObjectCreate(path, ConnectionDescriptor.class.getName());
        digester.addSetNext(path, "put",
            ConnectionDescriptor.class.getName());
        digester.addSetProperties(path);
        
        path = "connections/connection/username";
        digester.addCallMethod(path, 
            "setUsername", 1, new Class[] { java.lang.String.class });
            digester.addCallParam(path, 0);
            
        path = "connections/connection/password";
        digester.addCallMethod(path, 
            "setPassword", 2, new Class[] {
                java.lang.String.class, java.lang.Boolean.class });
            digester.addCallParam(path, 0);
            digester.addCallParam(path, 1, "encrypted");
            
        path = "connections/connection/catalog";
        digester.addCallMethod(path, 
            "setCatalog", 1, new Class[] { java.lang.String.class });
            digester.addCallParam(path, 0);
            
        path = "connections/connection/jdbc-url";
        digester.addCallMethod(path, 
            "setUrl", 1, new Class[] { java.lang.String.class });
            digester.addCallParam(path, 0);
        digester.addCallMethod(path, 
            "setJdbcClass", 1, new Class[] { java.lang.String.class });
            digester.addCallParam(path, 0, "class");
            
        path = "connections/connection/properties/property";
        digester.addCallMethod(path, 
            "setProperty", 2, new Class[] {
                java.lang.String.class, java.lang.String.class });
            digester.addCallParam(path, 0, "name");
            digester.addCallParam(path, 1);

        path = "connections/connection/url-variables/variable";
        digester.addCallMethod(path,
                "setUrlVariable", 2, new Class[] {
                        java.lang.String.class, java.lang.String.class });
        digester.addCallParam(path, 0, "name");
        digester.addCallParam(path, 1);

        digester.push(this); 
        try {
                
            digester.parse(in);
        }
        catch (Exception e) {
                
            LOG.severe("Failed to load connection descriptor from '"
                + filename + ": " + e.getMessage());
            return false;
        }
        
        return true;
    }
 
Example 16
Source File: BufferManager.java    From jsqsh with Apache License 2.0 4 votes vote down vote up
/**
 * Attempts to load a buffer history.
 * @param file The file to read.
 */
public void load(File file) {
    
    /*
     * Clear out the current history.
     */
    clear();
    
    /*
     * Historically, the history.xml file was stored newest entry to
     * oldest yet the BufferManager stores them internally oldest to
     * newest. To deal with this, we read our file into a list, then
     * we'll go back and put them into the buffer manager in the
     * proper order.
     */
    List<Buffer> bufferList = new ArrayList<Buffer>();
    
    String path;
    Digester digester = new Digester();
    digester.setValidating(false);
    
    path = "Buffers/Buffer";
    digester.addObjectCreate(path,  "org.sqsh.Buffer");
    digester.addSetNext(path, "add", "java.lang.Object");
    digester.addCallMethod(path, 
        "add", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0);
        
    digester.push(bufferList); 
    try {
        
        digester.parse(file);
    }
    catch (Exception e) {
        
        System.err.println("Failed to load buffer history file '"
            + file.toString() + "': " + e.getMessage());
    }
    
    /*
     * Now, blast back through our bufferList and put them into
     * the manager in the proper order (oldest to newest).
     */
    for (int i = bufferList.size() - 1; i >= 0; --i) {
        
        addBuffer(bufferList.get(i));
    }
    
    /*
     * Create an empty entry for "current".
     */
    newBuffer();
}
 
Example 17
Source File: VariableManager.java    From jsqsh with Apache License 2.0 4 votes vote down vote up
/**
 * Initializes the variable manager with variables as described by
 * the XML file pointed to by URL.
 */
public void load(ClassLoader loader, String location, InputStream in) {
    
    String path;
    Digester digester = new Digester();
    digester.setValidating(false);
    
    if (loader != null) {
        
        digester.setClassLoader(loader);
    }
    
    path = "Variables/String";
    digester.addObjectCreate(path, "org.sqsh.variables.StringVariable");
    digester.addSetNext(path, "putUnremoveable", "org.sqsh.Variable");
    digester.addCallMethod(path, 
        "setName", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "name");
    digester.addCallMethod(path, 
        "setValue", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "value");
        
    path = "Variables/Integer";
    digester.addObjectCreate(path, "org.sqsh.variables.IntegerVariable");
    digester.addSetNext(path, "putUnremoveable", "org.sqsh.Variable");
    digester.addCallMethod(path, 
        "setName", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "name");
    digester.addCallMethod(path, 
        "setMinValue", 1, new Class[] { java.lang.Integer.class });
        digester.addCallParam(path, 0, "min");
    digester.addCallMethod(path, 
        "setMaxValue", 1, new Class[] { java.lang.Integer.class });
        digester.addCallParam(path, 0, "max");
    digester.addCallMethod(path, 
        "setValue", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0);
        
    path = "Variables/Dynamic";
    digester.addObjectCreate(path, "org.sqsh.Variable", "class");
    digester.addSetNext(path, "putUnremoveable", "org.sqsh.Variable");
    digester.addCallMethod(path, 
        "setName", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "name");
    digester.addCallMethod(path, 
        "setValue", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "value");
        
    path = "Variables/Property";
    digester.addObjectCreate(path,  "org.sqsh.variables.PropertyVariable");
    digester.addSetNext(path, "putUnremoveable", "org.sqsh.Variable");
    digester.addCallMethod(path, 
        "setName", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "name");
    digester.addCallMethod(path, 
        "setBean", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "bean");
    digester.addCallMethod(path, 
        "setProperty", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0, "property");
    digester.addCallMethod(path, 
        "setSettable", 1, new Class[] { java.lang.Boolean.class });
        digester.addCallParam(path, 0, "settable");
    digester.addCallMethod(path, 
        "setQuiet", 1, new Class[] { java.lang.Boolean.class });
        digester.addCallParam(path, 0, "quiet");
        
    path = "*/Description";
    digester.addCallMethod(path, 
        "setDescription", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0);
    path = "*/HelpLocation";
    digester.addCallMethod(path, 
        "setHelpLocation", 1, new Class[] { java.lang.String.class });
        digester.addCallParam(path, 0);
        
    digester.push(this); 
    try {
        
        digester.parse(in);
    }
    catch (Exception e) {
        
        LOG.severe("Failed to parse variable definition file '"
            + location + "': " + e.getMessage());
    }
}
 
Example 18
Source File: ContextMappingFactory.java    From bluima with Apache License 2.0 4 votes vote down vote up
@SuppressWarnings("unchecked")
private ContextMappingFactory() {
    // defaultParameters = new Properties();

    try {
        Digester digester = new Digester();
        digester.setValidating(false);

        digester.addObjectCreate("jsre-config/mapping-list",
                ArrayList.class);

        digester.addObjectCreate("jsre-config/mapping-list/mapping",
                MappingParameters.class);
        digester.addBeanPropertySetter(
                "jsre-config/mapping-list/mapping/mapping-name", "name");
        digester.addBeanPropertySetter(
                "jsre-config/mapping-list/mapping/mapping-class",
                "className");

        digester.addCallMethod(
                "jsre-config/mapping-list/mapping/init-param",
                "setParameters", 2);
        digester.addCallParam(
                "jsre-config/mapping-list/mapping/init-param/param-name", 0);
        digester.addCallParam(
                "jsre-config/mapping-list/mapping/init-param/param-value",
                1);

        digester.addSetNext("jsre-config/mapping-list/mapping", "add");

        String configFile = System.getProperty("config.file");
        if (configFile == null) {
            LOG.debug("ContextMappingFactory uses the default config file: jsre-config.xml");
            checkFileExists(JSRE_HOME + RESOURCES_PATH + "jsre-config.xml");
            mappingList = (List<MappingParameters>) digester
                    .parse(new File(JSRE_HOME + RESOURCES_PATH
                            + "jsre-config.xml"));
        } else {
            LOG.debug("ContextMappingFactory uses the config file: "
                    + configFile);
            mappingList = (List<MappingParameters>) digester
                    .parse(new File(configFile));
        }

        LOG.debug("mapping-list size: " + mappingList.size());
        for (MappingParameters mp : mappingList)
            LOG.debug("{}", mp);

    } catch (Exception e) {
        LOG.error("woops", e);
    }
}
 
Example 19
Source File: MappingFactory.java    From bluima with Apache License 2.0 4 votes vote down vote up
@SuppressWarnings("unchecked")
private MappingFactory() {
    // defaultParameters = new Properties();
    mappingFactory = this;

    try {
        Digester digester = new Digester();
        digester.setValidating(false);

        digester.addObjectCreate("jsre-config/mapping-list",
                ArrayList.class);

        digester.addObjectCreate("jsre-config/mapping-list/mapping",
                MappingParameters.class);
        digester.addBeanPropertySetter(
                "jsre-config/mapping-list/mapping/mapping-name", "name");
        digester.addBeanPropertySetter(
                "jsre-config/mapping-list/mapping/mapping-class",
                "className");

        digester.addCallMethod(
                "jsre-config/mapping-list/mapping/init-param",
                "setParameters", 2);
        digester.addCallParam(
                "jsre-config/mapping-list/mapping/init-param/param-name", 0);
        digester.addCallParam(
                "jsre-config/mapping-list/mapping/init-param/param-value",
                1);

        digester.addSetNext("jsre-config/mapping-list/mapping", "add");

        String configFile = System.getProperty("config.file");
        if (configFile == null) {
            LOG.debug("MappingFactory uses the default config file: jsre-config.xml");
            checkFileExists(JSRE_HOME + RESOURCES_PATH + "jsre-config.xml");
            mappingList = (List<MappingParameters>) digester
                    .parse(new File(JSRE_HOME + RESOURCES_PATH
                            + "jsre-config.xml"));
        } else {
            LOG.debug("MappingFactory uses the config file: " + configFile);
            mappingList = (List<MappingParameters>) digester
                    .parse(configFile);
        }

        LOG.debug("mapping-list size: " + mappingList.size());
        for (MappingParameters mp : mappingList)
            LOG.debug(mp.toString());

    } catch (Exception e) {
        LOG.error("woops ", e);
    }
}
 
Example 20
Source File: NavDigester.java    From spacewalk with GNU General Public License v2.0 4 votes vote down vote up
/**
 * buildTree, method to take a url and parse the contents
 * into a NavTree
 * @param url the file to parse
 * @return NavTree the tree represented by the file
 * @throws Exception if something breaks. XXX: fix to be tighter
 */
public static NavTree buildTree(URL url) throws Exception {
    if (url == null) {
        throw new IllegalArgumentException("URL is null, your definition tag " +
                "probably points to a non existing file.");
    }
    Digester digester = new Digester();
    digester.setValidating(false);

    digester.addObjectCreate("rhn-navi-tree", NavTree.class);
    digester.addSetProperties("rhn-navi-tree");
    digester.addSetProperties("rhn-navi-tree",
                              "acl_mixins",
                              "aclMixins");

    digester.addObjectCreate("*/rhn-tab", NavNode.class);
    digester.addSetProperties("*/rhn-tab",
                              "active-image",
                              "activeImage");
    digester.addSetProperties("*/rhn-tab",
                              "inactive-image",
                              "inactiveImage");
    digester.addSetProperties("*/rhn-tab",
                              "target",
                              "target");

    digester.addCallMethod("*/rhn-tab",
                           "addPrimaryURL",
                           1);
    digester.addCallParam("*/rhn-tab",
                          0,
                          "url");

    digester.addCallMethod("*/rhn-tab/rhn-tab-url",
                           "addURL",
                           0);
    digester.addCallMethod("*/rhn-tab/rhn-tab-directory",
                           "addDirectory",
                           0);

    digester.addSetNext("*/rhn-tab", "addNode");
    return (NavTree)digester.parse(url.openStream());
}