code: public static Date parseDateOrNull(String dateString)
  			throws IllegalArgumentException {
  		if (dateString == null) {
  			return null;
  		} else if (dateString.isEmpty()) {
  			return null;
  		}
  		try {
  			return parseDateStrict(dateString);
  		} catch (ParseException e) {
  			throw new IllegalArgumentException(e.getMessage(), e);
  		}
  	}
docs: Convenience method for {@link #parseDateStrict(String)} with the
  following difference: null or empty input returns null. Any other parse
  errors are wrapped as an IllegalArgumentException.
  
  @param dateString
  the date string to parse
  @return a Date representation of the dateString or null
  @throws IllegalArgumentException
  if dateString is unable to be parsed.