if(logger.isTraceEnabled())
{
logger.trace("start extracting meta-data of " + uiComponent.getClass().getName());
}
PropertyDetails propertyDetails = ExtValUtils.getELHelper().getPropertyDetailsOfValueBinding(uiComponent);
if (propertyDetails == null)
{
return propertyInformation;
}
/*
* get bean class and property name
*/
Class entityClass = propertyDetails.getBaseObject().getClass();
//create
propertyInformation.setInformation(PropertyInformationKeys.PROPERTY_DETAILS, propertyDetails);
/*
* find and add annotations
*/
Class currentClass = entityClass;
while (!Object.class.getName().equals(currentClass.getName()))
{
addPropertyAccessAnnotations(currentClass, propertyDetails.getProperty(), propertyInformation);
addFieldAccessAnnotations(currentClass, propertyDetails.getProperty(), propertyInformation);
processInterfaces(currentClass, propertyDetails, propertyInformation);
currentClass = currentClass.getSuperclass();
}