Object property = PropertyUtils.getProperty(object, name);
Object property = getProperty(object, name, create);
    private static Object getCreatedProperty(Object object, String name, boolean create) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException, InstantiationException {        Object property = PropertyUtils.getProperty(object, name);                if (property == null && create) {            Class type = getPropertyType(object.getClass(), name);                        property = type.newInstance(); // ASSUMPTION: type is a complex value with a default constructor            PropertyUtils.setProperty(object, name, property);        }                return property;    }