ValueExpression (EL 5.0 API Documentation - Apache Tomcat 10.1.54)
Description: declaration: package: jakarta.el, class: ValueExpression

# Class ValueExpression

java.lang.Object
jakarta.el.Expression
jakarta.el.ValueExpression

All Implemented Interfaces:
  `Serializable`

public abstract class ValueExpression extends Expression

See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ValueExpression()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract Class<?>`
  `getExpectedType()`
  `abstract Class<?>`
  `getType(ELContext context)`
  `abstract <T> T`
  `getValue(ELContext context)`
  `ValueReference`
  `getValueReference(ELContext context)`
  `abstract boolean`
  `isReadOnly(ELContext context)`
  `abstract void`
  `setValue(ELContext context, Object value)`

  ### Methods inherited from class Expression

  `equals, getExpressionString, hashCode, isLiteralText`

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### ValueExpression

    public ValueExpression()

- ## Method Details

  - ### getValue

    public abstract <T> T getValue(ELContext context)
    Type Parameters:
      `T` - The expected type for the result of evaluating this value expression
    Parameters:
      `context` - The EL context for this evaluation
    Returns:
      The result of evaluating this value expression
    Throws:
      `NullPointerException` - If the supplied context is `null`
      `PropertyNotFoundException` - If a property/variable resolution failed because no match was found or a match was found but was not readable
      `ELException` - Wraps any exception throw whilst resolving a property or variable

  - ### setValue

    public abstract void setValue(ELContext context, Object value)
    Parameters:
      `context` - The EL context for this evaluation
      `value` - The value to set the property to which this value expression refers
    Throws:
      `NullPointerException` - If the supplied context is `null`
      `PropertyNotFoundException` - If a property/variable resolution failed because no match was found
      `PropertyNotWritableException` - If a property/variable resolution failed because a match was found but was not writable
      `ELException` - Wraps any exception throw whilst resolving a property or variable

  - ### isReadOnly

    public abstract boolean isReadOnly(ELContext context)
    Parameters:
      `context` - The EL context for this evaluation
    Returns:
      `true` if this expression is read only otherwise `false`
    Throws:
      `NullPointerException` - If the supplied context is `null`
      `PropertyNotFoundException` - If a property/variable resolution failed because no match was found or a match was found but was not readable
      `ELException` - Wraps any exception throw whilst resolving a property or variable

  - ### getType

    public abstract Class<?> getType(ELContext context)
    Parameters:
      `context` - The EL context for this evaluation
    Returns:
      The type of the result of this value expression
    Throws:
      `NullPointerException` - If the supplied context is `null`
      `PropertyNotFoundException` - If a property/variable resolution failed because no match was found or a match was found but was not readable
      `ELException` - Wraps any exception throw whilst resolving a property or variable

  - ### getExpectedType

    public abstract Class<?> getExpectedType()

  - ### getValueReference

    public ValueReference getValueReference(ELContext context)
    Parameters:
      `context` - The EL context for this evaluation
    Returns:
      This default implementation always returns `null`
    Since:
      EL 2.2