From 6dfe7c0a95fa1a44a3f902d2536e79fa7fe681bd Mon Sep 17 00:00:00 2001 From: Jens Pelzetter Date: Sat, 5 Nov 2022 17:50:01 +0100 Subject: [PATCH] Added Jackson for Java 8 Date/Time types --- ccm-cms/pom.xml | 4 ++++ ccm-core/pom.xml | 4 ++++ .../libreccm/imexport/AbstractEntityImExporter.java | 11 +++++++++-- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/ccm-cms/pom.xml b/ccm-cms/pom.xml index 8a3a80d6d..e1065b78d 100644 --- a/ccm-cms/pom.xml +++ b/ccm-cms/pom.xml @@ -101,6 +101,10 @@ com.fasterxml.jackson.jaxrs jackson-jaxrs-xml-provider + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + diff --git a/ccm-core/pom.xml b/ccm-core/pom.xml index a2a8e43b9..a11111401 100644 --- a/ccm-core/pom.xml +++ b/ccm-core/pom.xml @@ -266,6 +266,10 @@ com.fasterxml.jackson.dataformat jackson-dataformat-csv + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + diff --git a/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java b/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java index 9e3c14df3..0a1b6200a 100644 --- a/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java +++ b/ccm-core/src/main/java/org/libreccm/imexport/AbstractEntityImExporter.java @@ -20,6 +20,7 @@ package org.libreccm.imexport; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import java.io.IOException; import java.util.Set; @@ -39,7 +40,13 @@ import javax.transaction.Transactional; */ public abstract class AbstractEntityImExporter { - private final ObjectMapper objectMapper = new ObjectMapper(); + private final ObjectMapper objectMapper; + + public AbstractEntityImExporter() { + objectMapper = new ObjectMapper() + .registerModule(new JavaTimeModule()); + + } /** * Returns the Entity class which is handled by the implementation. This @@ -112,7 +119,7 @@ public abstract class AbstractEntityImExporter { /** * Reloads the entity to export. Entities become detacted for several - * reasons before they are passed to the null null {@link #exportEntity(org.libreccm.imexport.Exportable) method. The + * reasons before they are passed to the null null null {@link #exportEntity(org.libreccm.imexport.Exportable) method. The * implementation of this should reload the passed entity. * * @param entity The entity to reload.