public static ValueExpression unwrapCompositeComponentReference(ValueReference vr) { return ((CompositeComponentExpressionHolder) vr.getBase()).getExpression((String) vr.getProperty()); }
public ValueExpression getReferenceExpression() { CompositeComponentExpressionHolder expressionHolder = (CompositeComponentExpressionHolder) reference.getBase(); return expressionHolder.getExpression(reference.getProperty().toString()); }
public ValueExpression getReferenceExpression() { CompositeComponentExpressionHolder expressionHolder = (CompositeComponentExpressionHolder) reference.getBase(); return expressionHolder.getExpression(reference.getProperty().toString()); }
public static ValueExpression unwrapCompositeComponentReference(ValueReference vr) { return ((CompositeComponentExpressionHolder) vr.getBase()).getExpression((String) vr.getProperty()); }
/** * Gets the ValueReference from a ValueExpression, without any checks whether the property is actually * a property or if it isn't a "MethodSuffix". The property is stored as it appears in the expression, * and may thus not actually exists. It's up to the caller how to interpret this. * <p> * This is also a workaround for the fact that a ValueReference can't * be obtained from a TagValueExpression in JSF 2.x (since it doesn't implement getValueReference and its super * class just returns null). * * @param context the context of this evaluation * @param valueExpression the value expression being evaluated * @return a ValueReference holding the final base and property where the value expression evaluated to. */ public static ValueReference getValueReference(ELContext context, ValueExpression valueExpression) { InspectorElContext inspectorElContext = new InspectorElContext(context); valueExpression.getType(inspectorElContext); inspectorElContext.setPass(InspectorPass.PASS2_FIND_FINAL_NODE); valueExpression.getValue(inspectorElContext); Object base = inspectorElContext.getBase(); Object property = inspectorElContext.getProperty(); if (base instanceof CompositeComponentExpressionHolder) { return getValueReference(context, ((CompositeComponentExpressionHolder) base).getExpression(property.toString())); } return new ValueReference(base, property); }
/** * Gets the ValueReference from a ValueExpression, without any checks whether the property is actually * a property or if it isn't a "MethodSuffix". The property is stored as it appears in the expression, * and may thus not actually exists. It's up to the caller how to interpret this. * <p> * This is also a workaround for the fact that a ValueReference can't * be obtained from a TagValueExpression in JSF 2.x (since it doesn't implement getValueReference and its super * class just returns null). * * @param context the context of this evaluation * @param valueExpression the value expression being evaluated * @return a ValueReference holding the final base and property where the value expression evaluated to. */ public static ValueReference getValueReference(ELContext context, ValueExpression valueExpression) { InspectorElContext inspectorElContext = new InspectorElContext(context); valueExpression.getType(inspectorElContext); inspectorElContext.setPass(InspectorPass.PASS2_FIND_FINAL_NODE); valueExpression.getValue(inspectorElContext); Object base = inspectorElContext.getBase(); Object property = inspectorElContext.getProperty(); if (base instanceof CompositeComponentExpressionHolder) { return getValueReference(context, ((CompositeComponentExpressionHolder) base).getExpression(property.toString())); } return new ValueReference(base, property); }
/** * This method can be used to extract the ValueReference from the given ValueExpression. * * @param valueExpression The ValueExpression to resolve. * @param elCtx The ELContext, needed to parse and execute the expression. * @return The ValueReferenceWrapper. */ public static ValueReference resolve(ValueExpression valueExpression, final ELContext elCtx) { ValueReference valueReference = valueExpression.getValueReference(elCtx); while (valueReference != null && valueReference.getBase() instanceof CompositeComponentExpressionHolder) { valueExpression = ((CompositeComponentExpressionHolder) valueReference.getBase()) .getExpression((String) valueReference.getProperty()); if(valueExpression == null) { break; } valueReference = valueExpression.getValueReference(elCtx); } return valueReference; }
/** * This method can be used to extract the ValueReference from the given ValueExpression. * * @param valueExpression The ValueExpression to resolve. * @param elCtx The ELContext, needed to parse and execute the expression. * @return The ValueReferenceWrapper. */ public static ValueReference resolve(ValueExpression valueExpression, final ELContext elCtx) { ValueReference valueReference = valueExpression.getValueReference(elCtx); while (valueReference != null && valueReference.getBase() instanceof CompositeComponentExpressionHolder) { valueExpression = ((CompositeComponentExpressionHolder) valueReference.getBase()) .getExpression((String) valueReference.getProperty()); if(valueExpression == null) { break; } valueReference = valueExpression.getValueReference(elCtx); } return valueReference; } }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }
public ValueReference getReference(ELContext elContext) { InterceptingResolver resolver = new InterceptingResolver(elContext.getELResolver()); try { expression.setValue(decorateELContext(elContext, resolver), null); } catch (ELException ele) { return null; } ValueReference reference = resolver.getValueReference(); if (reference != null) { Object base = reference.getBase(); if (base instanceof CompositeComponentExpressionHolder) { ValueExpression ve = ((CompositeComponentExpressionHolder) base).getExpression(reference.getProperty()); if (ve != null) { this.expression = ve; reference = getReference(elContext); } } } return reference; }