if (isSimpleNamingAutoBindable(propName, propType, cd)) {
final Object value = getComponent(componentDef, propType, component, propName);
setPropertyValue(componentDef, propertyDesc, component, value);
return true;
final Object value = getComponent(componentDef, propName, component, propName);
if (propType.isInstance(value)) {
setPropertyValue(componentDef, propertyDesc, component, value);
return true;
if (hasComponentByType) {
final Object value = getComponent(componentDef, propType, component, propName);
setPropertyValue(componentDef, propertyDesc, component, value);
return true;
setPropertyValue(componentDef, propertyDesc, component, componentDef);
return true;
final Object[] values = container.findAllComponents(clazz);
if (values.length > 0) {
setPropertyValue(componentDef, propertyDesc, component, values);
return true;