code: public static Date fromISODateTimeUTC(final String val) throws BadDateException {
      try {
        synchronized (isoDateTimeUTCFormat) {
          return isoDateTimeUTCFormat.parse(val);
        }
      } catch (Throwable t) {
        throw new BadDateException();
      }
    }
docs: Get Date from "yyyyMMddThhmmssZ"
  
  @param val String "yyyyMMddThhmmssZ"
  @return Date
  @throws BadDateException on format error