org.springframework.beans.factory.access.el
Class SpringBeanELResolver

java.lang.Object
  extended by javax.el.ELResolver
      extended by org.springframework.beans.factory.access.el.SpringBeanELResolver
Direct Known Subclasses:
SimpleSpringBeanELResolver, SpringBeanFacesELResolver

public abstract class SpringBeanELResolver
extends ELResolver

Unified EL ELResolver that delegates to a Spring BeanFactory, resolving name references to Spring-defined beans.

Since:
2.5.2
Author:
Juergen Hoeller
See Also:
SpringBeanFacesELResolver

Field Summary
protected  Log logger
          Logger available to subclasses
 
Fields inherited from class javax.el.ELResolver
RESOLVABLE_AT_DESIGN_TIME, TYPE
 
Constructor Summary
SpringBeanELResolver()
           
 
Method Summary
protected abstract  BeanFactory getBeanFactory(ELContext elContext)
          Retrieve the Spring BeanFactory to delegate bean name resolution to.
 Class<?> getCommonPropertyType(ELContext elContext, Object base)
           
 Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext elContext, Object base)
           
 Class<?> getType(ELContext elContext, Object base, Object property)
           
 Object getValue(ELContext elContext, Object base, Object property)
           
 boolean isReadOnly(ELContext elContext, Object base, Object property)
           
 void setValue(ELContext elContext, Object base, Object property, Object value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected final Log logger
Logger available to subclasses

Constructor Detail

SpringBeanELResolver

public SpringBeanELResolver()
Method Detail

getValue

public Object getValue(ELContext elContext,
                       Object base,
                       Object property)
                throws ELException
Specified by:
getValue in class ELResolver
Throws:
ELException

getType

public Class<?> getType(ELContext elContext,
                        Object base,
                        Object property)
                 throws ELException
Specified by:
getType in class ELResolver
Throws:
ELException

setValue

public void setValue(ELContext elContext,
                     Object base,
                     Object property,
                     Object value)
              throws ELException
Specified by:
setValue in class ELResolver
Throws:
ELException

isReadOnly

public boolean isReadOnly(ELContext elContext,
                          Object base,
                          Object property)
                   throws ELException
Specified by:
isReadOnly in class ELResolver
Throws:
ELException

getFeatureDescriptors

public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext elContext,
                                                         Object base)
Specified by:
getFeatureDescriptors in class ELResolver

getCommonPropertyType

public Class<?> getCommonPropertyType(ELContext elContext,
                                      Object base)
Specified by:
getCommonPropertyType in class ELResolver

getBeanFactory

protected abstract BeanFactory getBeanFactory(ELContext elContext)
Retrieve the Spring BeanFactory to delegate bean name resolution to.

Parameters:
elContext - the current ELContext
Returns:
the Spring BeanFactory (never null)