// Unwrap the value before, so that we can recreate empty values
Object plainValue = null;
// Look for a MetaMapper
MetaType propertyType = property.getMetaType();
MetaMapper metaMapper = property.getTransientAttachment(MetaMapper.class);
Type mappedType = null;
if(metaMapper != null)
{
mappedType = metaMapper.mapToType();
plainValue = metaMapper.unwrapMetaValue(value);
}
else
{
PropertyInfo propertyInfo = beanInfo.getProperty(name);
plainValue = metaValueFactory.unwrap(value, propertyInfo.getType());