org.springframework.web.util

## Class ExpressionEvaluationUtils

- java.lang.Object
- - org.springframework.web.util.ExpressionEvaluationUtils

- Deprecated.
  as of Spring 3.2, in favor of the JSP 2.0+ native support for embedded expressions in JSP pages (also applying to tag attributes)

      @Deprecated
      public abstract class ExpressionEvaluationUtils
      extends Object

  Convenience methods for accessing JSP 2.0's `ExpressionEvaluator`.

  The evaluation methods check if the value contains "${" before invoking the EL evaluator, treating the value as "normal" expression (i.e. a literal String value) else.

  See `isSpringJspExpressionSupportActive(javax.servlet.jsp.PageContext)` for guidelines on when to use Spring's JSP expression support as opposed to the built-in expression support in JSP 2.0+ containers.

  Since:
    11.07.2003
  Author:
    Juergen Hoeller, Alef Arendsen
  See Also:
    `ExpressionEvaluator.evaluate(java.lang.String, java.lang.Class, javax.servlet.jsp.el.VariableResolver, javax.servlet.jsp.el.FunctionMapper)`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `EXPRESSION_PREFIX` Deprecated.
    `static String` | `EXPRESSION_SUFFIX` Deprecated.
    `static String` | `EXPRESSION_SUPPORT_CONTEXT_PARAM` Deprecated. Expression support parameter at the servlet context level (i.e.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ExpressionEvaluationUtils()` Deprecated.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Object` | `evaluate(String attrName, String attrValue, Class resultClass, PageContext pageContext)` Deprecated. Evaluate the given expression (be it EL or a literal String value) to an Object of a given type,
    `static Object` | `evaluate(String attrName, String attrValue, PageContext pageContext)` Deprecated. Evaluate the given expression (be it EL or a literal String value) to an Object.
    `static boolean` | `evaluateBoolean(String attrName, String attrValue, PageContext pageContext)` Deprecated. Evaluate the given expression (be it EL or a literal String value) to a boolean.
    `static int` | `evaluateInteger(String attrName, String attrValue, PageContext pageContext)` Deprecated. Evaluate the given expression (be it EL or a literal String value) to an integer.
    `static String` | `evaluateString(String attrName, String attrValue, PageContext pageContext)` Deprecated. Evaluate the given expression (be it EL or a literal String value) to a String.
    `static boolean` | `isExpressionLanguage(String value)` Deprecated. Check if the given expression value is an EL expression.
    `static boolean` | `isSpringJspExpressionSupportActive(PageContext pageContext)` Deprecated. Check whether Spring's JSP expression support is actually active.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### EXPRESSION_SUPPORT_CONTEXT_PARAM

          public static final String EXPRESSION_SUPPORT_CONTEXT_PARAM

      Deprecated.
      Expression support parameter at the servlet context level (i.e. a context-param in `web.xml`): "springJspExpressionSupport".
      See Also:
        Constant Field Values

    - #### EXPRESSION_PREFIX

          public static final String EXPRESSION_PREFIX

      Deprecated.
      See Also:
        Constant Field Values

    - #### EXPRESSION_SUFFIX

          public static final String EXPRESSION_SUFFIX

      Deprecated.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ExpressionEvaluationUtils

          public ExpressionEvaluationUtils()

      Deprecated.

  - ### Method Detail

    - #### isSpringJspExpressionSupportActive

          public static boolean isSpringJspExpressionSupportActive(PageContext pageContext)

      Deprecated.
      Check whether Spring's JSP expression support is actually active.

      Note that JSP 2.0+ containers come with expression support themselves: However, it will only be active for web applications declaring Servlet 2.4 or higher in their `web.xml` deployment descriptor.

      If a `web.xml` context-param named "springJspExpressionSupport" is found, its boolean value will be taken to decide whether this support is active. If not found, the default is for expression support to be inactive on Servlet 3.0 containers with web applications declaring Servlet 2.4 or higher in their `web.xml`. For backwards compatibility, Spring's expression support will remain active for applications declaring Servlet 2.3 or earlier. However, on Servlet 2.4/2.5 containers, we can't find out what the application has declared; as of Spring 3.2, we won't activate Spring's expression support at all then since it got deprecated and will be removed in the next iteration of the framework.

      Parameters:
        `pageContext` - current JSP PageContext
      Returns:
        `true` if active (ExpressionEvaluationUtils will actually evaluate expressions); `false` if not active (ExpressionEvaluationUtils will return given values as-is, relying on the JSP container pre-evaluating values before passing them to JSP tag attributes)

    - #### isExpressionLanguage

          public static boolean isExpressionLanguage(String value)

      Deprecated.
      Check if the given expression value is an EL expression.
      Parameters:
        `value` - the expression to check
      Returns:
        `true` if the expression is an EL expression, `false` otherwise

    - #### evaluate

          public static Object evaluate(String attrName,
                        String attrValue,
                        Class resultClass,
                        PageContext pageContext)
                                 throws JspException

      Deprecated.
      Evaluate the given expression (be it EL or a literal String value) to an Object of a given type,
      Parameters:
        `attrName` - name of the attribute (typically a JSP tag attribute)
        `attrValue` - value of the attribute
        `resultClass` - class that the result should have (String, Integer, Boolean)
        `pageContext` - current JSP PageContext
      Returns:
        the result of the evaluation
      Throws:
        `JspException` - in case of parsing errors, also in case of type mismatch if the passed-in literal value is not an EL expression and not assignable to the result class

    - #### evaluate

          public static Object evaluate(String attrName,
                        String attrValue,
                        PageContext pageContext)
                                 throws JspException

      Deprecated.
      Evaluate the given expression (be it EL or a literal String value) to an Object.
      Parameters:
        `attrName` - name of the attribute (typically a JSP tag attribute)
        `attrValue` - value of the attribute
        `pageContext` - current JSP PageContext
      Returns:
        the result of the evaluation
      Throws:
        `JspException` - in case of parsing errors

    - #### evaluateString

          public static String evaluateString(String attrName,
                              String attrValue,
                              PageContext pageContext)
                                       throws JspException

      Deprecated.
      Evaluate the given expression (be it EL or a literal String value) to a String.
      Parameters:
        `attrName` - name of the attribute (typically a JSP tag attribute)
        `attrValue` - value of the attribute
        `pageContext` - current JSP PageContext
      Returns:
        the result of the evaluation
      Throws:
        `JspException` - in case of parsing errors

    - #### evaluateInteger

          public static int evaluateInteger(String attrName,
                            String attrValue,
                            PageContext pageContext)
                                     throws JspException

      Deprecated.
      Evaluate the given expression (be it EL or a literal String value) to an integer.
      Parameters:
        `attrName` - name of the attribute (typically a JSP tag attribute)
        `attrValue` - value of the attribute
        `pageContext` - current JSP PageContext
      Returns:
        the result of the evaluation
      Throws:
        `JspException` - in case of parsing errors

    - #### evaluateBoolean

          public static boolean evaluateBoolean(String attrName,
                                String attrValue,
                                PageContext pageContext)
                                         throws JspException

      Deprecated.
      Evaluate the given expression (be it EL or a literal String value) to a boolean.
      Parameters:
        `attrName` - name of the attribute (typically a JSP tag attribute)
        `attrValue` - value of the attribute
        `pageContext` - current JSP PageContext
      Returns:
        the result of the evaluation
      Throws:
        `JspException` - in case of parsing errors