Package org.apache.jasper.el

# Class JasperELResolver

java.lang.Object
javax.el.ELResolver
javax.el.CompositeELResolver
org.apache.jasper.el.JasperELResolver

public class JasperELResolver extends CompositeELResolver
Jasper-specific CompositeELResolver that optimizes certain functions to avoid unnecessary resolver calls.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`JasperELResolver.GraalBeanELResolver`
Extend ELResolver for Graal to avoid bean info use if possible, as BeanELResolver needs manual reflection configuration.

## Field Summary

### Fields inherited from class javax.el.ELResolver

`RESOLVABLE_AT_DESIGN_TIME, TYPE`

## Constructor Summary

Constructors
Constructor
Description
`JasperELResolver(List<ELResolver> appResolvers, ELResolver streamResolver)`

## Method Summary

Modifier and Type
Method
Description
`void`
`add(ELResolver elResolver)`
`Object`
`getValue(ELContext context, Object base, Object property)`
Obtain the value of the given property on the given object using the given context.
`Object`
`invoke(ELContext context, Object base, Object method, Class<?>[] paramTypes, Object[] params)`
Invokes a method on the the given object.

### Methods inherited from class javax.el.CompositeELResolver

`convertToType, getCommonPropertyType, getFeatureDescriptors, getType, isReadOnly, setValue`

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

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

## Constructor Details

### JasperELResolver

public JasperELResolver(List<ELResolver> appResolvers, ELResolver streamResolver)

## Method Details

### add

public void add(ELResolver elResolver)

Overrides:
  `add` in class `CompositeELResolver`

### getValue

public Object getValue(ELContext context, Object base, Object property) throws NullPointerException, PropertyNotFoundException, ELException
Description copied from class: `javax.el.ELResolver`
Obtain the value of the given property on the given object using the given context.

Overrides:
  `getValue` in class `CompositeELResolver`
Parameters:
  `context` - The EL context for this evaluation
  `base` - The base object on which the property is to be found
  `property` - The property whose value is to be returned
Returns:
  the value of the provided property
Throws:
  `NullPointerException` - If the supplied context is `null`
  `PropertyNotFoundException` - If the base/property combination provided to the resolver is one that the resolver can handle but no match was found or a match was found but was not readable
  `ELException` - Wraps any exception throw whilst resolving the property

### invoke

public Object invoke(ELContext context, Object base, Object method, Class<?>[] paramTypes, Object[] params)
Description copied from class: `javax.el.ELResolver`
Invokes a method on the the given object.

Overrides:
  `invoke` in class `CompositeELResolver`
Parameters:
  `context` - The EL context for this evaluation
  `base` - The base object on which the method is to be found
  `method` - The method to invoke
  `paramTypes` - The types of the parameters of the method to invoke
  `params` - The parameters with which to invoke the method
Returns:
  This default implementation always returns `null`