Example usage for javax.servlet.jsp.tagext TagLibraryValidator setInitParameters

List of usage examples for javax.servlet.jsp.tagext TagLibraryValidator setInitParameters

Introduction

In this page you can find the example usage for javax.servlet.jsp.tagext TagLibraryValidator setInitParameters.

Prototype

public void setInitParameters(Map<String, Object> map) 

Source Link

Document

Set the init data in the TLD for this validator.

Usage

From source file:org.apache.jasper.compiler.TagLibraryInfoImpl.java

private TagLibraryValidator createValidator(TreeNode elem) throws JasperException {

    String validatorClass = null;
    Map initParams = new Hashtable();

    Iterator list = elem.findChildren();
    while (list.hasNext()) {
        TreeNode element = (TreeNode) list.next();
        String tname = element.getName();
        if ("validator-class".equals(tname))
            validatorClass = element.getBody();
        else if ("init-param".equals(tname)) {
            String[] initParam = createInitParam(element);
            initParams.put(initParam[0], initParam[1]);
        } else if ("description".equals(tname) || // Ignored elements
                false) {//from w w w .j a v a  2 s .  c o m
        } else {
            if (log.isWarnEnabled()) {
                log.warn(Localizer.getMessage("jsp.warning.unknown.element.in.validator", tname));
            }
        }
    }

    TagLibraryValidator tlv = null;
    if (validatorClass != null && !validatorClass.equals("")) {
        try {
            Class tlvClass = ctxt.getClassLoader().loadClass(validatorClass);
            tlv = (TagLibraryValidator) tlvClass.newInstance();
        } catch (Exception e) {
            err.jspError("jsp.error.tlvclass.instantiation", validatorClass, e);
        }
    }
    if (tlv != null) {
        tlv.setInitParameters(initParams);
    }
    return tlv;
}

From source file:org.tinygroup.jspengine.compiler.TagLibraryInfoImpl.java

private TagLibraryValidator createValidator(TreeNode elem) throws JasperException {

    String validatorClass = null;
    Map<String, Object> initParams = new Hashtable<String, Object>();

    Iterator list = elem.findChildren();
    while (list.hasNext()) {
        TreeNode element = (TreeNode) list.next();
        String tname = element.getName();
        if ("validator-class".equals(tname))
            validatorClass = element.getBody();
        else if ("init-param".equals(tname)) {
            String[] initParam = createInitParam(element);
            initParams.put(initParam[0], initParam[1]);
        } else if ("description".equals(tname) || // Ignored elements
                false) {//from   w ww.j  av  a2 s.  c o  m
        } else {
            err.jspError("jsp.error.unknown.element.in.validator", tname);
        }
    }

    TagLibraryValidator tlv = null;
    if (validatorClass != null && !validatorClass.equals("")) {
        try {
            Class tlvClass = ctxt.getClassLoader().loadClass(validatorClass);
            tlv = (TagLibraryValidator) tlvClass.newInstance();
        } catch (Exception e) {
            err.jspError("jsp.error.tlvclass.instantiation", validatorClass, e);
        }
    }
    if (tlv != null) {
        tlv.setInitParameters(initParams);
    }
    return tlv;
}

From source file:org.tinygroup.jspengine.compiler.TagLibraryInfoImpl.java

/**
 * Translation-time validation of the XML document
 * associated with the JSP page./*from   www . j a  v a 2s  .c  o m*/
 * This is a convenience method on the associated 
 * TagLibraryValidator class.
 *
 * @param thePage The JSP page object
 * @return A string indicating whether the page is valid or not.
 */
public ValidationMessage[] validate(PageData thePage) {
    TagLibraryValidator tlv = getTagLibraryValidator();
    if (tlv == null)
        return null;
    Map<String, Object> initParameters = tlv.getInitParameters();
    if (initParameters == null) {
        tlv.setInitParameters(new HashMap<String, Object>());
    }
    String uri = getURI();
    if (uri.startsWith("/")) {
        uri = URN_JSPTLD + uri;
    }

    ValidationMessage[] messages = tlv.validate(getPrefixString(), uri, thePage);
    tlv.release();

    return messages;
}