public static Date parseXMLDate(String source) {
		try {
			return (source == null) ? null : datatypeFactory.newXMLGregorianCalendar(source).toGregorianCalendar()
					.getTime();
		} catch (Exception e) {
			if (log.isDebugEnabled()) log.warn("Could not convert XML date: '" + source + "'", e);
			else
				log.warn("Could not convert XML date: '" + source + "'");
			return null;
		}
	}