Class AttributeParser


  • public class AttributeParser
    extends Object
    Converts a JSP attribute value into the unquoted equivalent. The attribute may contain EL expressions, in which case care needs to be taken to avoid any ambiguities. For example, consider the attribute values "${1+1}" and "\${1+1}". After unquoting, both appear as "${1+1}" but the first should evaluate to "2" and the second to "${1+1}". Literal \, $ and # need special treatment to ensure there is no ambiguity. The JSP attribute unquoting covers \\, \", \', \$, \#, %\>, <\%, &apos; and &quot;
    • Method Detail

      • getUnquoted

        public static String getUnquoted​(String input,
                                         char quote,
                                         boolean isELIgnored,
                                         boolean isDeferredSyntaxAllowedAsLiteral,
                                         boolean strict,
                                         boolean quoteAttributeEL)
        Parses the provided input String as a JSP attribute and returns an unquoted value.
        Parameters:
        input - The input.
        quote - The quote character for the attribute or 0 for scripting expressions.
        isELIgnored - Is expression language being ignored on the page where the JSP attribute is defined.
        isDeferredSyntaxAllowedAsLiteral - Are deferred expressions treated as literals?
        strict - Should the rules of JSP.1.6 for escaping of quotes be strictly applied?
        quoteAttributeEL - Should the rules of JSP.1.6 for escaping in attributes be applied to EL in attribute values?
        Returns:
        An unquoted JSP attribute that, if it contains expression language can be safely passed to the EL processor without fear of ambiguity.