Converting from LocalDate to XMLGregorianCalendar:
LocalDate date = LocalDate.now();
GregorianCalendar gcal = GregorianCalendar.from(date.atStartOfDay(ZoneId.systemDefault()));
XMLGregorianCalendar xcal = DatatypeFactory.newInstance().newXMLGregorianCalendar(gcal);
Converting back is simpler:
xcal.toGregorianCalendar().toZonedDateTime().toLocalDate();