При анализе дат и времени из документов XML в объекты JodaTime я использую общий набор утилит преобразования, обычно с использованием анализаторов и форматеров, предоставляемых org.joda.time.format.ISODateTimeFormat
.
В большинстве случаев работает нормально, но на этот раз я вижу документы со значением xs:date
в формате 2010-08-19Z
. Это совершенно правильное значение xs:date
, но ни один из стандартных ISODateTimeFormat
-генерированных LocalDate
анализаторов, которые я пробовал, не примет его. Самое близкое, что я могу найти, это ISODateTimeFormat.dateParser()
, который примет довольно странно выглядящий 2010-08-19TZ
, но не 2010-08-19Z
(обратите внимание на T
).
Все это довольно раздражает, поскольку Joda и XML Schema должны строго придерживаться правил форматирования даты / времени ISO, но либо одно из них не соответствует, либо спецификация нечеткая.
Прежде чем я признаю поражение и произвожу ручной формат в произвольном формате, кто-нибудь может указать мне на ISODateTimeFormat
-обработанный синтаксический анализатор, который будет читать это значение?