code: public static Class<?> extractType(MetaProperty<?> metaProp, Class<?> beanType) {
          Class<?> type = metaProp.propertyType();
          Object[] helpers = OPTIONALS.get(type);
          if (helpers != null) {
              try {
                  Class<?> genericType = JodaBeanUtils.extractTypeClass(metaProp, beanType, 1, 0);
                  type = (genericType != null ? genericType : type);
              } catch (Exception ex) {
                  throw new RuntimeException(ex);
              }
          }
          return type;
      }
docs: Extracts the value of the property from a bean, unwrapping any optional.
  
  @param metaProp  the property to query, not null
  @param beanType  the type of the bean, not null
  @return the type of the property with any optional wrapper removed