Работает ли спецификация часового пояса в XMLMapper?
Я получаю DateTime в XML-файле, как этот 2009-12-14 05:07:38Z.
Итак, я подумал, что это ошибка, но после небольшого поиска, я нахожу это:
http://www.w3schools.com/Schema/schema_dtypes_date.asp
Часовые пояса Чтобы указать часовой пояс, вы можете ввести время в формате UTC, добавив "Z" после времени, например:
09: 30: 10Z
но когда я определяю DateTime в узле в моем XMLMapper: мое datetime - это trunc, и я просто получаю дату.
Мне нужно больше кофе?
Как справиться с этим?
Спасибо
1 ответ
Гуго,
Представление часового пояса 'Z' (Zulu) взято из ISO 8601, и оно может применяться либо к значению времени, либо к значению даты-времени. Строка в вашем примере содержит одну строку, представляющую дату "2009-12-14", разделитель пробелов и вторую строку, представляющую время с индикатором часового пояса "05:07:38Z". Если вы хотите использовать комбинированное представление даты и времени, промежуточный пробел следует заменить на "Т", то есть "2009-12-14T05:07:38Z"
Я не знаком с XMLMapper, но похоже, что он правильно интерпретирует строку в соответствии с ISO 8601, обрабатывая только часть до места. Вы можете обработать временную часть строки отдельно и объединить их, или заменить '' на 'T' перед обработкой, или, возможно, даже создать подкласс чего-то, чтобы принять это (слишком распространенное) ублюденное представление...
Максимум