From 15529361b21891f5c458e379bf9b1ffffda0bde9 Mon Sep 17 00:00:00 2001 From: Yassen Bantchev Date: Thu, 24 Mar 2022 16:17:38 +0200 Subject: [PATCH] Fix datetime parsing The specification for xsd:datetime doesn't impose any limit on the number of digits representing fractions of a second. The limit of 3 is artificially low and real-life fares data exists that has more than 3 digits --- .../org/rutebanken/util/LocalDateTimeISO8601XmlAdapter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/rutebanken/util/LocalDateTimeISO8601XmlAdapter.java b/src/main/java/org/rutebanken/util/LocalDateTimeISO8601XmlAdapter.java index 36fbc05..5c50a4b 100644 --- a/src/main/java/org/rutebanken/util/LocalDateTimeISO8601XmlAdapter.java +++ b/src/main/java/org/rutebanken/util/LocalDateTimeISO8601XmlAdapter.java @@ -25,7 +25,7 @@ public class LocalDateTimeISO8601XmlAdapter extends XmlAdapter { private static final DateTimeFormatter formatter = new DateTimeFormatterBuilder().appendPattern("yyyy-MM-dd'T'HH:mm:ss") - .optionalStart().appendFraction(ChronoField.MILLI_OF_SECOND, 0, 3, true).optionalEnd() + .optionalStart().appendFraction(ChronoField.MILLI_OF_SECOND, 0, 9, true).optionalEnd() .optionalStart().appendPattern("XXXXX") .optionalEnd()