public final class ContextualCompositeValueExpression
extends javax.el.ValueExpression
This specialized ValueExpression enables the evaluation of
composite component expressions. Instances of this expression will be
created when TagAttributeImpl.getValueExpression(javax.faces.view.facelets.FaceletContext, Class)
is invoked and the expression represents a composite component expression (i.e. #{cc.[properties]}).
It's important to note that these ValueExpressions are context
sensitive in that they leverage the location in which they were referenced
in order to push the proper composite component to the evaluation context
prior to evaluating the expression itself.
Using Page test.xhtml
---------------------------------
<ez:comp1 greeting="Hello!" />
comp1.xhtml
---------------------------------
<composite:interface>
<composite:attribute name="greeting" type="java.lang.String" required="true" />
</composite:interface>
<composite:implementation>
<ez:nesting>
<h:outputText value="#{cc.attrs.greetings}" />
</ez:nesting>
</composite:implementation>
nesting.xhtml
---------------------------------
<composite:interface />
<composite:implementation>
<composite:insertChildren>
</composite:implementation>
In the above example, there will be two composite components available to
the runtime: ez:comp1 and ez:nesting.
When <h:outputText value="#{cc.attrs.greeting}" />, prior to attempting
to evaluate the expression, the Location object will be used to
find the composite component that 'owns' the template in which
the expression was defined in by comparing the path of the Location with the
name and library of the Resource instance associated
with each composite component. If a matching composite component is found,
it will be made available to the EL by calling CompositeComponentStackManager.push(javax.faces.component.UIComponent).
| Constructor and Description |
|---|
ContextualCompositeValueExpression() |
ContextualCompositeValueExpression(javax.faces.view.Location location,
javax.el.ValueExpression originalVE) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object o) |
Class<?> |
getExpectedType() |
String |
getExpressionString() |
javax.faces.view.Location |
getLocation() |
Class<?> |
getType(javax.el.ELContext elContext) |
Object |
getValue(javax.el.ELContext elContext) |
int |
hashCode() |
boolean |
isLiteralText() |
boolean |
isReadOnly(javax.el.ELContext elContext) |
void |
setValue(javax.el.ELContext elContext,
Object o) |
String |
toString() |
public ContextualCompositeValueExpression()
public ContextualCompositeValueExpression(javax.faces.view.Location location,
javax.el.ValueExpression originalVE)
public Object getValue(javax.el.ELContext elContext)
getValue in class javax.el.ValueExpressionpublic void setValue(javax.el.ELContext elContext,
Object o)
setValue in class javax.el.ValueExpressionpublic boolean isReadOnly(javax.el.ELContext elContext)
isReadOnly in class javax.el.ValueExpressionpublic Class<?> getType(javax.el.ELContext elContext)
getType in class javax.el.ValueExpressionpublic Class<?> getExpectedType()
getExpectedType in class javax.el.ValueExpressionpublic String getExpressionString()
getExpressionString in class javax.el.Expressionpublic boolean equals(Object o)
equals in class javax.el.Expressionpublic int hashCode()
hashCode in class javax.el.Expressionpublic boolean isLiteralText()
isLiteralText in class javax.el.Expressionpublic javax.faces.view.Location getLocation()
Location of this ValueExpressionCopyright © 2010–2018 JBoss by Red Hat. All rights reserved.