code: public static Date fromRfcDateTimeUTC(final String val) throws BadDateException {
      try {
        synchronized (rfcDateTimeUTCFormat) {
          return rfcDateTimeUTCFormat.parse(val);
        }
      } catch (Throwable t) {
        throw new BadDateException();
      }
    }
docs: Get Date from "yyyy-MM-ddThh:mm:ssZ"
  
  @param val String "yyyy-MM-ddThh:mm:ssZ"
  @return Date
  @throws BadDateException on format error