Assert.notNull(entity);
for (PropertyDescriptor property : BeanUtils.getPropertyDescriptors(ClassUtils.getActualClass(entity))) {
Object received = property.getReadMethod().invoke(entity);
EntityParser parser = getParser(property.getPropertyType(), received);
if (parser != null) {
Displayable parsed = parser.parse((Displayable) received);
property.getWriteMethod().invoke(entity, parsed);
}
}
return entity;
}