bundles/org.apache.jasper.glassfish/src/org/apache/jasper/compiler/JspConfig.java
private JspPropertyGroup selectProperty(JspPropertyGroup prev,
                                            JspPropertyGroup curr) {
        if (prev == null) {
            return curr;
        }
        if (prev.getExtension() == null) {
            // exact match
            return prev;
        }
        if (curr.getExtension() == null) {
            // exact match
            return curr;
        }
        String prevPath = prev.getPath();
        String currPath = curr.getPath();
        if (prevPath == null && currPath == null) {
            // Both specifies a *.ext, keep the first one
            return prev;
        }
        if (prevPath == null && currPath != null) {
            return curr;
        }
        if (prevPath != null && currPath == null) {
            return prev;
        }
        if (prevPath.length() >= currPath.length()) {
            return prev;
        }
        return curr;
    }
private JspPropertyGroup selectProperty(JspPropertyGroup prev,
                                            JspPropertyGroup curr) {
        if (prev == null) {
            return curr;
        }
        if (prev.getExtension() == null) {
            // exact match
            return prev;
        }
        if (curr.getExtension() == null) {
            // exact match
            return curr;
        }
        String prevPath = prev.getPath();
        String currPath = curr.getPath();
        if (prevPath == null && currPath == null) {
            // Both specifies a *.ext, keep the first one
            return prev;
        }
        if (prevPath == null && currPath != null) {
            return curr;
        }
        if (prevPath != null && currPath == null) {
            return prev;
        }
        if (prevPath.length() >= currPath.length()) {
            return prev;
        }
        return curr;
    }
private JspPropertyGroup selectProperty ( JspPropertyGroup prev , JspPropertyGroup curr ) { if ( prev == null ) { return curr ; } if ( prev . getExtension ( ) == null ) { // exact match return prev ; } if ( curr . getExtension ( ) == null ) { // exact match return curr ; } String prevPath = prev . getPath ( ) ; String currPath = curr . getPath ( ) ; if ( prevPath == null && currPath == null ) { // Both specifies a *.ext, keep the first one return prev ; } if ( prevPath == null && currPath != null ) { return curr ; } if ( prevPath != null && currPath == null ) { return prev ; } if ( prevPath . length ( ) >= currPath . length ( ) ) { return prev ; } return curr ; }
Select the property group that has more restrictive url-pattern.
In case of tie, select the first.
Select the property group that has more restrictive url - pattern . In case of tie select the first .