diff --git a/jOOQ-jackson-extensions/pom.xml b/jOOQ-jackson-extensions/pom.xml index 85d4d58e80..05c181f679 100644 --- a/jOOQ-jackson-extensions/pom.xml +++ b/jOOQ-jackson-extensions/pom.xml @@ -46,6 +46,14 @@ com.fasterxml.jackson.core jackson-databind + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + + + com.fasterxml.jackson.module + jackson-module-kotlin + diff --git a/jOOQ-jackson-extensions/src/main/java/module-info.java b/jOOQ-jackson-extensions/src/main/java/module-info.java index bacc0a2637..7ecc051160 100644 --- a/jOOQ-jackson-extensions/src/main/java/module-info.java +++ b/jOOQ-jackson-extensions/src/main/java/module-info.java @@ -6,6 +6,8 @@ module org.jooq.jackson.extensions { // Other jOOQ modules requires transitive org.jooq; requires com.fasterxml.jackson.databind; + requires com.fasterxml.jackson.datatype.jsr310; + requires com.fasterxml.jackson.kotlin; // Nullability annotations for better Kotlin interop requires static org.jetbrains.annotations; diff --git a/jOOQ-jackson-extensions/src/main/java/org/jooq/jackson/extensions/converters/AbstractToJacksonConverter.java b/jOOQ-jackson-extensions/src/main/java/org/jooq/jackson/extensions/converters/AbstractToJacksonConverter.java index 8d7a84ca37..a55f33efbf 100644 --- a/jOOQ-jackson-extensions/src/main/java/org/jooq/jackson/extensions/converters/AbstractToJacksonConverter.java +++ b/jOOQ-jackson-extensions/src/main/java/org/jooq/jackson/extensions/converters/AbstractToJacksonConverter.java @@ -45,6 +45,8 @@ import org.jooq.impl.AbstractConverter; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.json.JsonMapper; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import com.fasterxml.jackson.module.kotlin.KotlinModule; /** * A base class for {@link JSON} or {@link JSONB} to Jackson POJO conversion. @@ -60,12 +62,12 @@ abstract class AbstractToJacksonConverter extends AbstractConverter mapper = JsonMapper .builder() - .findAndAddModules() + .addModule(new JavaTimeModule()) + .addModule(new KotlinModule()) .build(); } abstract String data(J json); - abstract J json(String string); @Override