# Class StandardELContext

java.lang.Object
jakarta.el.ELContext
jakarta.el.StandardELContext

public class StandardELContext extends ELContext
Standard implementation of `ELContext` that provides a complete EL resolution environment. It maintains a composite resolver chain, variable mapper, function mapper, and supports custom resolvers and local beans. This is the default context implementation used by `ELProcessor`.

Since:
  EL 3.0

## Constructor Summary

Constructors
Constructor
Description
`StandardELContext(ELContext context)`
Constructs a new instance that wraps the given context.
`StandardELContext(ExpressionFactory factory)`
Constructs a new instance backed by the given expression factory.

## Method Summary

Modifier and Type
Method
Description
`void`
`addELResolver(ELResolver resolver)`
Adds a custom EL resolver to the resolver chain.
`Object`
`getContext(Class<?> key)`
Obtain the context object for the given key.
`ELResolver`
`getELResolver()`
Returns the ELResolver used to resolve properties and method invocations during expression evaluation.
`FunctionMapper`
`getFunctionMapper()`
Returns the FunctionMapper used to resolve EL function names to Java methods during expression evaluation.
`VariableMapper`
`getVariableMapper()`
Returns the VariableMapper used to resolve EL variable names to `ValueExpression` instances during expression evaluation.
`void`
`putContext(Class<?> key, Object contextObject)`
Add an object to this EL context under the given key.

### Methods inherited from class ELContext

`addEvaluationListener, convertToType, enterLambdaScope, exitLambdaScope, getEvaluationListeners, getImportHandler, getLambdaArgument, getLocale, isLambdaArgument, isPropertyResolved, notifyAfterEvaluation, notifyBeforeEvaluation, notifyPropertyResolved, setLocale, setPropertyResolved, setPropertyResolved`

### Methods inherited from class Object

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

## Constructor Details

### StandardELContext

public StandardELContext(ExpressionFactory factory)
Constructs a new instance backed by the given expression factory.

Initializes the standard resolver chain with built-in resolvers and a function mapper populated from the factory's initial function map.

Parameters:
  `factory` - the expression factory providing the initial resolver and function configuration

### StandardELContext

public StandardELContext(ELContext context)
Constructs a new instance that wraps the given context.

The variable mapper, function mapper, and EL resolver from the wrapped context are used, with additional standard resolvers prepended.

Parameters:
  `context` - the context to wrap

## Method Details

### putContext

public void putContext(Class<?> key, Object contextObject)
Description copied from class: `ELContext`
Add an object to this EL context under the given key.

Overrides:
  `putContext` in class `ELContext`
Parameters:
  `key` - The key under which to store the object
  `contextObject` - The object to add

### getContext

public Object getContext(Class<?> key)
Description copied from class: `ELContext`
Obtain the context object for the given key.

Overrides:
  `getContext` in class `ELContext`
Parameters:
  `key` - The key of the required context object
Returns:
  The value of the context object associated with the given key

### getELResolver

public ELResolver getELResolver()
Description copied from class: `ELContext`
Returns the ELResolver used to resolve properties and method invocations during expression evaluation.

Specified by:
  `getELResolver` in class `ELContext`
Returns:
  the ELResolver for this context

### addELResolver

public void addELResolver(ELResolver resolver)
Adds a custom EL resolver to the resolver chain.

Custom resolvers are inserted after the bean name resolver and before the standard resolvers, allowing them to intercept resolution before the built-in resolvers are consulted.

Parameters:
  `resolver` - the resolver to add

### getFunctionMapper

public FunctionMapper getFunctionMapper()
Description copied from class: `ELContext`
Returns the FunctionMapper used to resolve EL function names to Java methods during expression evaluation.

Specified by:
  `getFunctionMapper` in class `ELContext`
Returns:
  the FunctionMapper for this context

### getVariableMapper

public VariableMapper getVariableMapper()
Description copied from class: `ELContext`
Returns the VariableMapper used to resolve EL variable names to `ValueExpression` instances during expression evaluation.

Specified by:
  `getVariableMapper` in class `ELContext`
Returns:
  the VariableMapper for this context