Search in sources :

Example 6 with TagLibDescriptor

use of com.sun.enterprise.tools.verifier.TagLibDescriptor in project Payara by payara.

the class TagLibPublicID method check.

public Result check(WebBundleDescriptor descriptor) {
    Result result = getInitializedResult();
    ComponentNameConstructor compName = getVerifierContext().getComponentNameConstructor();
    String[] acceptablePubidLiterals = { "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN", "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" };
    String[] acceptableURLs = { "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd", "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd" };
    VerifierTestContext context = getVerifierContext();
    TagLibDescriptor[] tlds = context.getTagLibDescriptors();
    addGoodDetails(result, compName);
    result.passed(smh.getLocalString(getClass().getName() + ".passed", "Test passed successfully"));
    if (tlds != null && tlds.length != 0) {
        boolean oneFailed = false;
        // iterate over all the tag lib descriptors present in war file
        for (int i = 0; i < tlds.length; i++) {
            String publicID = tlds[i].getPublicID();
            String systemID = tlds[i].getSystemID();
            if (publicID == null)
                continue;
            boolean match = false;
            for (int k = 0; k < acceptablePubidLiterals.length; k++) {
                if (publicID.compareTo(acceptablePubidLiterals[k]) == 0 && systemID.compareTo(acceptableURLs[k]) == 0) {
                    match = true;
                    addGoodDetails(result, compName);
                    result.passed(smh.getLocalString(getClass().getName() + ".passed1", "The deployment descriptor [ {0} ] has the proper PubidLiteral: [ {1} ] and sytemID: [ {2} ]", new Object[] { tlds[i].getUri(), acceptablePubidLiterals[k], acceptableURLs[k] }));
                    break;
                }
            }
            if (!match) {
                oneFailed = true;
                addErrorDetails(result, compName);
                result.addErrorDetails(smh.getLocalString(getClass().getName() + ".failed", "The deployment descriptor for [ {0} ] does not have an expected PubidLiteral or SystemID", new Object[] { tlds[i].getUri() }));
            }
        }
        if (oneFailed)
            result.setStatus(Result.FAILED);
        return result;
    }
    return result;
}
Also used : VerifierTestContext(com.sun.enterprise.tools.verifier.VerifierTestContext) TagLibDescriptor(com.sun.enterprise.tools.verifier.TagLibDescriptor) ComponentNameConstructor(com.sun.enterprise.tools.verifier.tests.ComponentNameConstructor) Result(com.sun.enterprise.tools.verifier.Result)

Example 7 with TagLibDescriptor

use of com.sun.enterprise.tools.verifier.TagLibDescriptor in project Payara by payara.

the class TaglibListenerClassExists method check.

public Result check(WebBundleDescriptor descriptor) {
    ComponentNameConstructor compName = getVerifierContext().getComponentNameConstructor();
    VerifierTestContext context = getVerifierContext();
    Result result = getInitializedResult();
    TagLibDescriptor[] tlds = context.getTagLibDescriptors();
    ClassLoader cl = context.getClassLoader();
    if (tlds == null) {
        addGoodDetails(result, compName);
        result.passed(smh.getLocalString(getClass().getName() + ".passed", "No tag lib files are specified"));
        return result;
    }
    for (TagLibDescriptor tld : tlds) {
        String[] classes = tld.getListenerClasses();
        if (classes != null) {
            for (String s : classes) {
                Class c = null;
                try {
                    c = Class.forName(s, false, cl);
                } catch (ClassNotFoundException e) {
                    addErrorDetails(result, compName);
                    result.failed(smh.getLocalString(getClass().getName() + ".failed", "Taglib listener class [ {0} ] found in " + "[ {1} ] is not loadable ", new Object[] { s, tld.getUri() }));
                }
            }
        }
    }
    if (result.getStatus() != Result.FAILED) {
        addGoodDetails(result, compName);
        result.passed(smh.getLocalString(getClass().getName() + ".passed1", "taglib listener classes, if any, specified in tlds are loadable"));
    }
    return result;
}
Also used : VerifierTestContext(com.sun.enterprise.tools.verifier.VerifierTestContext) TagLibDescriptor(com.sun.enterprise.tools.verifier.TagLibDescriptor) ComponentNameConstructor(com.sun.enterprise.tools.verifier.tests.ComponentNameConstructor) Result(com.sun.enterprise.tools.verifier.Result)

Example 8 with TagLibDescriptor

use of com.sun.enterprise.tools.verifier.TagLibDescriptor in project Payara by payara.

the class TaglibFunctionSignatureIsValid method check.

public Result check(WebBundleDescriptor descriptor) {
    ComponentNameConstructor compName = getVerifierContext().getComponentNameConstructor();
    Result result = getInitializedResult();
    VerifierTestContext context = getVerifierContext();
    TagLibDescriptor[] tlds = context.getTagLibDescriptors();
    FunctionDescriptor[] fnDesc = null;
    if (tlds == null) {
        addGoodDetails(result, compName);
        result.passed(smh.getLocalString(getClass().getName() + ".passed", "No tag lib files are specified"));
        return result;
    }
    for (TagLibDescriptor tld : tlds) {
        if (tld.getSpecVersion().compareTo("2.0") >= 0) {
            fnDesc = tld.getFunctionDescriptors();
            if (fnDesc != null)
                for (FunctionDescriptor fd : fnDesc) checkSignature(result, fd, tld, compName);
        }
    }
    if (result.getStatus() != Result.FAILED) {
        addGoodDetails(result, compName);
        result.passed(smh.getLocalString(getClass().getName() + ".passed", "function-signature element of the tag lib " + "descriptor are properly defined."));
    }
    return result;
}
Also used : VerifierTestContext(com.sun.enterprise.tools.verifier.VerifierTestContext) TagLibDescriptor(com.sun.enterprise.tools.verifier.TagLibDescriptor) FunctionDescriptor(com.sun.enterprise.tools.verifier.web.FunctionDescriptor) ComponentNameConstructor(com.sun.enterprise.tools.verifier.tests.ComponentNameConstructor) Result(com.sun.enterprise.tools.verifier.Result)

Aggregations

TagLibDescriptor (com.sun.enterprise.tools.verifier.TagLibDescriptor)8 Result (com.sun.enterprise.tools.verifier.Result)7 VerifierTestContext (com.sun.enterprise.tools.verifier.VerifierTestContext)7 ComponentNameConstructor (com.sun.enterprise.tools.verifier.tests.ComponentNameConstructor)7 TagDescriptor (com.sun.enterprise.tools.verifier.web.TagDescriptor)3 FunctionDescriptor (com.sun.enterprise.tools.verifier.web.FunctionDescriptor)2 ArrayList (java.util.ArrayList)2 IOException (java.io.IOException)1 Iterator (java.util.Iterator)1 LogRecord (java.util.logging.LogRecord)1 ParserConfigurationException (javax.xml.parsers.ParserConfigurationException)1 WebBundleDescriptorImpl (org.glassfish.web.deployment.descriptor.WebBundleDescriptorImpl)1 Document (org.w3c.dom.Document)1 SAXException (org.xml.sax.SAXException)1 SAXParseException (org.xml.sax.SAXParseException)1