JspMethodExpression (Apache Tomcat 10.1.56 API Documentation)
Description: declaration: package: org.apache.jasper.el, class: JspMethodExpression

# Class JspMethodExpression

java.lang.Object
jakarta.el.Expression
jakarta.el.MethodExpression
org.apache.jasper.el.JspMethodExpression

All Implemented Interfaces:
  `Externalizable, Serializable`

public final class JspMethodExpression extends MethodExpression implements Externalizable
Wrapper around a MethodExpression that adds JSP-specific error tracking with marks. Implements Externalizable for serialization support.

See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JspMethodExpression()`
  Default constructor required by Externalizable.
  `JspMethodExpression(String mark, MethodExpression target)`
  Creates a new JspMethodExpression wrapping the given target expression.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object obj)`
  `String`
  `getExpressionString()`
  Returns the original string representation of this EL expression as it was parsed.
  `MethodInfo`
  `getMethodInfo(ELContext context)`
  Returns information about the method that this expression resolves to.
  `MethodReference`
  `getMethodReference(ELContext context)`
  Obtain the `MethodReference` for the method to which this method expression resolves.
  `int`
  `hashCode()`
  `Object`
  `invoke(ELContext context, Object[] params)`
  Invokes the method that this expression resolves to with the given parameters.
  `boolean`
  `isLiteralText()`
  Returns whether this expression is a literal text expression, meaning it does not contain any variables, functions, or operators and evaluates to a constant value.
  `boolean`
  `isParametersProvided()`
  Returns whether the parameters for the method invocation are provided by the expression or by the container.
  `void`
  `readExternal(ObjectInput in)`
  `void`
  `writeExternal(ObjectOutput out)`

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### JspMethodExpression

    public JspMethodExpression()
    Default constructor required by Externalizable.

  - ### JspMethodExpression

    public JspMethodExpression(String mark, MethodExpression target)
    Creates a new JspMethodExpression wrapping the given target expression.
    Parameters:
      `mark` - the mark for error tracking
      `target` - the underlying MethodExpression to wrap

- ## Method Details

  - ### getMethodInfo

    public MethodInfo getMethodInfo(ELContext context) throws NullPointerException, PropertyNotFoundException, MethodNotFoundException, ELException
    Description copied from class: `jakarta.el.MethodExpression`
    Returns information about the method that this expression resolves to.
    Specified by:
      `getMethodInfo` in class `MethodExpression`
    Parameters:
      `context` - The EL context for this evaluation
    Returns:
      Information about the method that this expression resolves to
    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
      `MethodNotFoundException` - If no matching method can be found
      `ELException` - Wraps any exception throw whilst resolving the property

  - ### invoke

    public Object invoke(ELContext context, Object[] params) throws NullPointerException, PropertyNotFoundException, MethodNotFoundException, ELException
    Description copied from class: `jakarta.el.MethodExpression`
    Invokes the method that this expression resolves to with the given parameters.
    Specified by:
      `invoke` in class `MethodExpression`
    Parameters:
      `context` - The EL context for this evaluation
      `params` - The parameters with which to invoke this method expression
    Returns:
      The result of invoking this method 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
      `MethodNotFoundException` - If no matching method can be found
      `ELException` - Wraps any exception throw whilst resolving the property or coercion of the result to the expected return type fails

  - ### getMethodReference

    public MethodReference getMethodReference(ELContext context)
    Description copied from class: `jakarta.el.MethodExpression`
    Obtain the `MethodReference` for the method to which this method expression resolves.
    Overrides:
      `getMethodReference` in class `MethodExpression`
    Parameters:
      `context` - The EL context for this evaluation
    Returns:
      This default implementation always returns `null`

  - ### isParametersProvided

    public boolean isParametersProvided()
    Description copied from class: `jakarta.el.MethodExpression`
    Returns whether the parameters for the method invocation are provided by the expression or by the container.
    Overrides:
      `isParametersProvided` in class `MethodExpression`
    Returns:
      This default implementation always returns `false`

  - ### equals

    public boolean equals(Object obj)
    Specified by:
      `equals` in class `Expression`

  - ### hashCode

    public int hashCode()
    Specified by:
      `hashCode` in class `Expression`

  - ### getExpressionString

    public String getExpressionString()
    Description copied from class: `jakarta.el.Expression`
    Returns the original string representation of this EL expression as it was parsed.
    Specified by:
      `getExpressionString` in class `Expression`
    Returns:
      the string representation of this expression

  - ### isLiteralText

    public boolean isLiteralText()
    Description copied from class: `jakarta.el.Expression`
    Returns whether this expression is a literal text expression, meaning it does not contain any variables, functions, or operators and evaluates to a constant value.
    Specified by:
      `isLiteralText` in class `Expression`
    Returns:
      `true` if this expression is a literal text, `false` otherwise

  - ### writeExternal

    public void writeExternal(ObjectOutput out) throws IOException
    Specified by:
      `writeExternal` in interface `Externalizable`
    Throws:
      `IOException`

  - ### readExternal

    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
    Specified by:
      `readExternal` in interface `Externalizable`
    Throws:
      `IOException`
      `ClassNotFoundException`