Example usage for org.apache.commons.digester CallParamRule CallParamRule

List of usage examples for org.apache.commons.digester CallParamRule CallParamRule

Introduction

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

Prototype

public CallParamRule(int paramIndex, int stackIndex) 

Source Link

Document

Constructs a "call parameter" rule which sets a parameter from the stack.

Usage

From source file:com.sun.faces.application.TestNavigationHandler.java

private void loadTestResultList() {
    Digester digester = new Digester();
    digester.setUseContextClassLoader(true);
    try {/*w w  w.  ja v  a2s  .  co m*/
        digester.setValidating(false);
    } catch (Throwable t) {
        System.out.println("Error creating Digester instance...");
        assertTrue(false);
    }

    digester.addRule("*/test", new CallMethodRule("createAndAccrueTestResult", 4));
    digester.addRule("*/test", new CallParamRule(0, "fromViewId"));
    digester.addRule("*/test", new CallParamRule(1, "fromAction"));
    digester.addRule("*/test", new CallParamRule(2, "fromOutcome"));
    digester.addRule("*/test", new CallParamRule(3, "toViewId"));

    String fileName = "/WEB-INF/navigation-cases.xml";
    InputStream input = null;
    try {
        input = config.getServletContext().getResourceAsStream(fileName);
    } catch (Throwable t) {
        System.out.println("Error Opening File:" + fileName);
        assertTrue(false);
    }
    try {
        digester.push(this);
        digester.parse(input);
    } catch (Throwable t) {
        if (null != t) {
            t.printStackTrace();
        }
        System.out.println("Unable to parse file:" + t.getMessage());
        assertTrue(false);
    }
}