Object get(Object start, Path path) { if (path.getParent() == null) { return get(start, getObjectType(start).getProperty(path.getName())); } else { Object value = get(start, path.getParent()); return get(value, getObjectType(value).getProperty(path.getName()));
public Object get(final Object obj, Property prop) { if (LOG.isDebugEnabled()) { trace("get", new Object[] {obj, prop.getName()});
    Object get(Object start, Path path) {        if (path.getParent() == null) {            return get(start,                       getObjectType(start).getProperty(path.getName()));        } else {            Object value = get(start, path.getParent());            return get(value,                       getObjectType(value).getProperty(path.getName()));        }    }