org.apache.myfaces.el.unified.resolver
Class FacesCompositeELResolver

java.lang.Object
  extended by javax.el.ELResolver
      extended by javax.el.CompositeELResolver
          extended by org.apache.myfaces.el.CompositeELResolver
              extended by org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver

public final class FacesCompositeELResolver
extends CompositeELResolver

This composite el resolver will be used at the top level resolver for faces (Application.getELResolver()) and jsp (the one we add with JspApplicationContext.addELResolver(javax.el.ELResolver). It keeps track of its scope to let the variable resolver VariableResolverImpl know in which scope it is executed. This is necessarry to call either the faces or the jsp resolver head.

This implementation does nothing if there is no actual faces context. This is necessarry since we registered our resolvers into the jsp engine. Therefore we have to make sure that jsp only pages where no faces context is available are still working

Version:
$Revision: 1341400 $ $Date: 2012-05-22 05:57:55 -0500 (Tue, 22 May 2012) $
Author:
Mathias Broekelmann (latest modification by $Author: lu4242 $)

Nested Class Summary
static class FacesCompositeELResolver.Scope
           
 
Field Summary
static String SCOPE
           
 
Fields inherited from class javax.el.ELResolver
RESOLVABLE_AT_DESIGN_TIME, TYPE
 
Constructor Summary
FacesCompositeELResolver(FacesCompositeELResolver.Scope scope)
           
 
Method Summary
 Class<?> getCommonPropertyType(javax.el.ELContext context, Object base)
           
 Iterator<FeatureDescriptor> getFeatureDescriptors(javax.el.ELContext context, Object base)
           
 Class<?> getType(javax.el.ELContext context, Object base, Object property)
           
 Object getValue(javax.el.ELContext context, Object base, Object property)
           
 boolean isReadOnly(javax.el.ELContext context, Object base, Object property)
           
 void setValue(javax.el.ELContext context, Object base, Object property, Object val)
           
 
Methods inherited from class org.apache.myfaces.el.CompositeELResolver
add
 
Methods inherited from class javax.el.CompositeELResolver
invoke
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SCOPE

public static final String SCOPE
See Also:
Constant Field Values
Constructor Detail

FacesCompositeELResolver

public FacesCompositeELResolver(FacesCompositeELResolver.Scope scope)
Method Detail

getCommonPropertyType

public Class<?> getCommonPropertyType(javax.el.ELContext context,
                                      Object base)
Overrides:
getCommonPropertyType in class javax.el.CompositeELResolver

getFeatureDescriptors

public Iterator<FeatureDescriptor> getFeatureDescriptors(javax.el.ELContext context,
                                                         Object base)
Overrides:
getFeatureDescriptors in class CompositeELResolver

getType

public Class<?> getType(javax.el.ELContext context,
                        Object base,
                        Object property)
Overrides:
getType in class javax.el.CompositeELResolver

getValue

public Object getValue(javax.el.ELContext context,
                       Object base,
                       Object property)
Overrides:
getValue in class javax.el.CompositeELResolver

isReadOnly

public boolean isReadOnly(javax.el.ELContext context,
                          Object base,
                          Object property)
Overrides:
isReadOnly in class javax.el.CompositeELResolver

setValue

public void setValue(javax.el.ELContext context,
                     Object base,
                     Object property,
                     Object val)
Overrides:
setValue in class javax.el.CompositeELResolver


Copyright © 2014 The Apache Software Foundation. All Rights Reserved.