diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java b/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java index 4fcc9a5d0..5e8ed45e7 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/utilities/documents/word/WordBuilder.java @@ -25,9 +25,12 @@ import org.slf4j.LoggerFactory; import java.io.IOException; import java.math.BigInteger; +import java.text.SimpleDateFormat; import java.time.Instant; import java.time.ZoneId; import java.time.format.DateTimeFormatter; +import java.time.format.DateTimeParseException; +import java.time.temporal.TemporalAccessor; import java.util.*; import java.util.stream.Collectors; @@ -352,8 +355,15 @@ public class WordBuilder { if (field.getValue() == null || field.getValue().equals("false")) return null; return data.getLabel(); case "datepicker": - case "datePicker": - return field.getValue() != null ? DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(ZoneId.systemDefault()).format(Instant.parse((String)field.getValue())) : ""; + case "datePicker":{ + Instant instant; + try { + instant = Instant.parse((String) field.getValue()); + } catch (DateTimeParseException ex) { + instant = (Instant) DateTimeFormatter.ofPattern("yyyy-MM-dd").parse((String)field.getValue()); + } + return field.getValue() != null ? DateTimeFormatter.ofPattern("yyyy-MM-dd").withZone(ZoneId.systemDefault()).format(instant) : ""; + } case "freetext": case "textarea": case "richTextarea":