code: protected XMLGregorianCalendar date(Long millis) {
          if (millis == null) {
              return null;
          }
          GregorianCalendar gCal = new GregorianCalendar();
          gCal.setTimeInMillis(millis);
          return dtf.newXMLGregorianCalendar(gCal);
      }
docs: XMLGregorianCalendar used because it provides a standard formatting (ISO 8601) and timezone handling
  @param millis
  @return an XMLGregorianCalendar in the current timezone.<p>
  TODO consider forcing TimeZone to UTC