in core/src/main/java/org/apache/myfaces/extensions/validator/core/el/DefaultELHelper.java [101:144]
private ValueBindingExpression getValueBindingExpression(UIComponent uiComponent, boolean allowBlankCharacters)
{
String valueBindingExpression = getOriginalValueBindingExpression(uiComponent);
//for input components without value-binding
//(e.g. for special component libs -> issue with ExtValRendererWrapper#encodeBegin)
if(valueBindingExpression == null)
{
this.logger.finest(
uiComponent.getClass() + " has no value binding - component id: " + uiComponent.getId());
return null;
}
if(!allowBlankCharacters)
{
valueBindingExpression = valueBindingExpression.replace(" ", "");
}
FacesContext facesContext = FacesContext.getCurrentInstance();
if (getTypeOfExpression(facesContext,
new ValueBindingExpression(valueBindingExpression).getBaseExpression()) == null)
{
ValueBindingExpression result = FaceletsTaglibExpressionHelper.
tryToCreateValueBindingForFaceletsBinding(uiComponent);
if(result == null)
{
logger.fine("couldn't resolve expression: " + valueBindingExpression);
return null;
}
Class entityClass = getTypeOfExpression(facesContext, result.getBaseExpression());
if(entityClass == null)
{
logger.fine("couldn't resolve expression: " + result.getExpressionString());
return null;
}
return result;
}
return new ValueBindingExpression(valueBindingExpression);
}