code: @SuppressWarnings("unchecked")
      public static <X, Y> Y getValue(X target, String propertyPath,
                                      Class<Y> valueClass) {
          return getExpression((Class<X>) target.getClass(), propertyPath,
                  valueClass).getValue(target);
      }
docs: /* With value class