javax.el

## Class ELResolver

- java.lang.Object
- - javax.el.ELResolver

- Direct Known Subclasses:
    ArrayELResolver, BeanELResolver, BeanNameELResolver, CompositeELResolver, ListELResolver, MapELResolver, ResourceBundleELResolver, StaticFieldELResolver, TypeConverter

      public abstract class ELResolver
      extends java.lang.Object

  Author:
    Jacob Hookom [jacob/hookom.net]

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `RESOLVABLE_AT_DESIGN_TIME`
    `static java.lang.String` | `TYPE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ELResolver()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `convertToType(ELContext context, java.lang.Object obj, java.lang.Class<?> type)` Converts the given object to the given type.
    `abstract java.lang.Class<?>` | `getCommonPropertyType(ELContext context, java.lang.Object base)`
    `abstract java.util.Iterator<java.beans.FeatureDescriptor>` | `getFeatureDescriptors(ELContext context, java.lang.Object base)`
    `abstract java.lang.Class<?>` | `getType(ELContext context, java.lang.Object base, java.lang.Object property)`
    `abstract java.lang.Object` | `getValue(ELContext context, java.lang.Object base, java.lang.Object property)`
    `java.lang.Object` | `invoke(ELContext context, java.lang.Object base, java.lang.Object method, java.lang.Class<?>[] paramTypes, java.lang.Object[] params)` Invokes a method on the the given object.
    `abstract boolean` | `isReadOnly(ELContext context, java.lang.Object base, java.lang.Object property)`
    `abstract void` | `setValue(ELContext context, java.lang.Object base, java.lang.Object property, java.lang.Object value)`

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

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

- - ### Field Detail

    - #### TYPE

          public static final java.lang.String TYPE

      See Also:
        Constant Field Values

    - #### RESOLVABLE_AT_DESIGN_TIME

          public static final java.lang.String RESOLVABLE_AT_DESIGN_TIME

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ELResolver

          public ELResolver()

  - ### Method Detail

    - #### getValue

          public abstract java.lang.Object getValue(ELContext context,
                                  java.lang.Object base,
                                  java.lang.Object property)

      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:
        `java.lang.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 java.lang.Object invoke(ELContext context,
                                java.lang.Object base,
                                java.lang.Object method,
                                java.lang.Class<?>[] paramTypes,
                                java.lang.Object[] params)

      Invokes a method on the the given object. This default implementation always returns `null`.
      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:
        Always `null`
      Since:
        EL 2.2

    - #### getType

          public abstract java.lang.Class<?> getType(ELContext context,
                                   java.lang.Object base,
                                   java.lang.Object property)

      Parameters:
        `context` - The EL context for this evaluation
        `base` - The base object on which the property is to be found
        `property` - The property whose type is to be returned
      Returns:
        the type of the provided property
      Throws:
        `java.lang.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

    - #### setValue

          public abstract void setValue(ELContext context,
                      java.lang.Object base,
                      java.lang.Object property,
                      java.lang.Object value)

      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 set
        `value` - The value to set the property to
      Throws:
        `java.lang.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
        `PropertyNotWritableException` - If the base/property combination provided to the resolver is one that the resolver can handle but the property was not writable
        `ELException` - Wraps any exception throw whilst resolving the property

    - #### isReadOnly

          public abstract boolean isReadOnly(ELContext context,
                           java.lang.Object base,
                           java.lang.Object property)

      Parameters:
        `context` - The EL context for this evaluation
        `base` - The base object on which the property is to be found
        `property` - The property to be checked for read only status
      Returns:
        `true` if the identified property is read only, otherwise `false`
      Throws:
        `java.lang.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
        `ELException` - Wraps any exception throw whilst resolving the property

    - #### getFeatureDescriptors

          public abstract java.util.Iterator<java.beans.FeatureDescriptor> getFeatureDescriptors(ELContext context,
                                                                               java.lang.Object base)

    - #### getCommonPropertyType

          public abstract java.lang.Class<?> getCommonPropertyType(ELContext context,
                                                 java.lang.Object base)

    - #### convertToType

          public java.lang.Object convertToType(ELContext context,
                                       java.lang.Object obj,
                                       java.lang.Class<?> type)

      Converts the given object to the given type. This default implementation always returns `null`.
      Parameters:
        `context` - The EL context for this evaluation
        `obj` - The object to convert
        `type` - The type to which the object should be converted
      Returns:
        Always `null`
      Since:
        EL 3.0

Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.