diff --git a/extensions-contrib/aliyun-oss-extensions/pom.xml b/extensions-contrib/aliyun-oss-extensions/pom.xml
index ac79e63df556..7d280355bf22 100644
--- a/extensions-contrib/aliyun-oss-extensions/pom.xml
+++ b/extensions-contrib/aliyun-oss-extensions/pom.xml
@@ -43,6 +43,12 @@
com.aliyun.oss
aliyun-sdk-oss
3.11.3
+
+
+ javax.xml.bind
+ jaxb-api
+
+
diff --git a/extensions-contrib/ddsketch/pom.xml b/extensions-contrib/ddsketch/pom.xml
index a2a5925135a4..cb44cfaf92cf 100644
--- a/extensions-contrib/ddsketch/pom.xml
+++ b/extensions-contrib/ddsketch/pom.xml
@@ -88,6 +88,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-json-provider
provided
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.fasterxml.jackson.jaxrs
diff --git a/extensions-contrib/druid-deltalake-extensions/pom.xml b/extensions-contrib/druid-deltalake-extensions/pom.xml
index 635d1a3b6abf..282039fc1981 100644
--- a/extensions-contrib/druid-deltalake-extensions/pom.xml
+++ b/extensions-contrib/druid-deltalake-extensions/pom.xml
@@ -96,7 +96,7 @@
com.fasterxml.jackson.core
jackson-databind
- 2.12.7.1
+ ${jackson.version}
it.unimi.dsi
diff --git a/extensions-contrib/tdigestsketch/pom.xml b/extensions-contrib/tdigestsketch/pom.xml
index b7ba250613ef..efd101ecec63 100644
--- a/extensions-contrib/tdigestsketch/pom.xml
+++ b/extensions-contrib/tdigestsketch/pom.xml
@@ -84,11 +84,23 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-json-provider
provided
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
provided
+
+
+ javax.xml.bind
+ jaxb-api
+
+
it.unimi.dsi
diff --git a/extensions-core/datasketches/pom.xml b/extensions-core/datasketches/pom.xml
index 919e5e8d8209..f6afcfab74ea 100644
--- a/extensions-core/datasketches/pom.xml
+++ b/extensions-core/datasketches/pom.xml
@@ -137,6 +137,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-json-provider
provided
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.fasterxml.jackson.jaxrs
diff --git a/extensions-core/druid-catalog/pom.xml b/extensions-core/druid-catalog/pom.xml
index c854e97055db..0ad27d295c69 100644
--- a/extensions-core/druid-catalog/pom.xml
+++ b/extensions-core/druid-catalog/pom.xml
@@ -129,6 +129,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
provided
+
+
+ javax.xml.bind
+ jaxb-api
+
+
javax.ws.rs
diff --git a/extensions-core/kubernetes-overlord-extensions/pom.xml b/extensions-core/kubernetes-overlord-extensions/pom.xml
index 80e61cec9ee6..ec731a590349 100644
--- a/extensions-core/kubernetes-overlord-extensions/pom.xml
+++ b/extensions-core/kubernetes-overlord-extensions/pom.xml
@@ -35,25 +35,9 @@
-
- 6.13.1
+ 7.2.0
-
-
-
-
- org.yaml
- snakeyaml
- 1.33
-
-
-
-
org.apache.druid
@@ -155,7 +139,7 @@
io.vertx
vertx-core
- 4.5.8
+ 4.5.14
javax.ws.rs
@@ -198,7 +182,7 @@
io.fabric8
mockwebserver
- 0.2.2
+ ${fabric8.version}
test
diff --git a/extensions-core/multi-stage-query/pom.xml b/extensions-core/multi-stage-query/pom.xml
index bc26993c072b..e514f00bbf1d 100644
--- a/extensions-core/multi-stage-query/pom.xml
+++ b/extensions-core/multi-stage-query/pom.xml
@@ -140,6 +140,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
provided
+
+
+ javax.xml.bind
+ jaxb-api
+
+
javax.ws.rs
diff --git a/extensions-core/testing-tools/pom.xml b/extensions-core/testing-tools/pom.xml
index 2042b8033b5b..aec558b3f38d 100644
--- a/extensions-core/testing-tools/pom.xml
+++ b/extensions-core/testing-tools/pom.xml
@@ -114,6 +114,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-json-provider
provided
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.fasterxml.jackson.jaxrs
diff --git a/indexing-service/pom.xml b/indexing-service/pom.xml
index 5c722530acf8..8a875c6dfcb8 100644
--- a/indexing-service/pom.xml
+++ b/indexing-service/pom.xml
@@ -153,6 +153,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.google.errorprone
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
index f54e88c93044..d9d53fff0cf4 100644
--- a/integration-tests/pom.xml
+++ b/integration-tests/pom.xml
@@ -307,6 +307,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.google.guava
diff --git a/licenses.yaml b/licenses.yaml
index 9509f442d24d..83c034e4be8b 100644
--- a/licenses.yaml
+++ b/licenses.yaml
@@ -223,10 +223,40 @@ name: Jackson
license_category: binary
module: java-core
license_name: Apache License version 2.0
-version: 2.12.7
+version: 2.18.4.1
libraries:
- - com.fasterxml.jackson.core: jackson-annotations
- com.fasterxml.jackson.core: jackson-core
+notice: |
+ # Jackson JSON processor
+
+ Jackson is a high-performance, Free/Open Source JSON processing library.
+ It was originally written by Tatu Saloranta (tatu.saloranta@iki.fi), and has
+ been in development since 2007.
+ It is currently developed by a community of developers, as well as supported
+ commercially by FasterXML.com.
+
+ ## Licensing
+
+ Jackson core and extension components may licensed under different licenses.
+ To find the details that apply to this artifact see the accompanying LICENSE file.
+ For more information, including possible other licensing options, contact
+ FasterXML.com (http://fasterxml.com).
+
+ ## Credits
+
+ A list of contributors may be found from CREDITS file, which is included
+ in some artifacts (usually source distributions); but is always available
+ from the source code management (SCM) system project uses.
+
+---
+
+name: Jackson
+license_category: binary
+module: java-core
+license_name: Apache License version 2.0
+version: 2.18.4
+libraries:
+ - com.fasterxml.jackson.core: jackson-annotations
- com.fasterxml.jackson.dataformat: jackson-dataformat-cbor
- com.fasterxml.jackson.dataformat: jackson-dataformat-smile
- com.fasterxml.jackson.dataformat: jackson-dataformat-xml
@@ -264,29 +294,24 @@ notice: |
name: Jackson
license_category: binary
-module: java-core
+module: extensions-contrib/druid-deltalake-extensions
license_name: Apache License version 2.0
-version: 2.12.7.1
+version: 2.18.4
libraries:
- com.fasterxml.jackson.core: jackson-databind
notice: |
# Jackson JSON processor
-
Jackson is a high-performance, Free/Open Source JSON processing library.
It was originally written by Tatu Saloranta (tatu.saloranta@iki.fi), and has
been in development since 2007.
It is currently developed by a community of developers, as well as supported
commercially by FasterXML.com.
-
## Licensing
-
Jackson core and extension components may licensed under different licenses.
To find the details that apply to this artifact see the accompanying LICENSE file.
For more information, including possible other licensing options, contact
FasterXML.com (http://fasterxml.com).
-
## Credits
-
A list of contributors may be found from CREDITS file, which is included
in some artifacts (usually source distributions); but is always available
from the source code management (SCM) system project uses.
@@ -855,7 +880,7 @@ name: kubernetes fabric java client
license_category: binary
module: extensions-core/kubernetes-overlord-extensions
license_name: Apache License version 2.0
-version: 6.13.1
+version: 7.2.0
libraries:
- io.fabric8: kubernetes-client-api
- io.fabric8: kubernetes-model-batch
@@ -887,7 +912,7 @@ name: vertx
license_category: binary
module: extensions-core/kubernetes-overlord-extensions
license_name: Apache License version 2.0
-version: 4.5.8
+version: 4.5.14
libraries:
- io.vertx: vertx-auth-common
- io.vertx: vertx-core
@@ -1064,7 +1089,7 @@ name: org.snakeyaml snakeyaml-engine
license_category: binary
module: extensions-core/druid-kubernetes-overlord-extensions
license_name: Apache License version 2.0
-version: 2.7
+version: 2.9
libraries:
- org.snakeyaml: snakeyaml-engine
@@ -1074,7 +1099,7 @@ name: org.yaml snakeyaml
license_category: binary
module: extensions-core/druid-kubernetes-overlord-extensions
license_name: Apache License version 2.0
-version: 1.33
+version: 2.3
libraries:
- org.yaml: snakeyaml
@@ -2859,7 +2884,7 @@ libraries:
---
name: Jackson Dataformat Yaml
-version: 2.12.7
+version: 2.18.4
license_category: binary
module: extensions/druid-avro-extensions
license_name: Apache License version 2.0
diff --git a/pom.xml b/pom.xml
index 68ee72ef2e30..983cd6f49081 100644
--- a/pom.xml
+++ b/pom.xml
@@ -100,7 +100,8 @@
1.3
9.4.57.v20241219
1.19.4
- 2.12.7.20221012
+ 2.18.4.1
+ 2.18.4
1.9.13
2.22.1
8.2.0
@@ -615,7 +616,7 @@
com.fasterxml.jackson
jackson-bom
- ${jackson.version}
+ ${jackson.core.version}
import
pom
@@ -1702,6 +1703,8 @@
com.google.code.findbugs:annotations
+
+ javax.xml.bind:jaxb-api
diff --git a/processing/src/main/java/org/apache/druid/jackson/JodaStuff.java b/processing/src/main/java/org/apache/druid/jackson/JodaStuff.java
index 573af0a0828c..ae89d90bb044 100644
--- a/processing/src/main/java/org/apache/druid/jackson/JodaStuff.java
+++ b/processing/src/main/java/org/apache/druid/jackson/JodaStuff.java
@@ -117,7 +117,8 @@ public DateTime deserialize(JsonParser jp, DeserializationContext ctxt) throws I
// make sure to preserve time zone information when parsing timestamps
return DateTimes.ISO_DATE_OR_TIME_WITH_OFFSET.parse(str);
}
- throw ctxt.mappingException(getValueClass());
+ ctxt.reportWrongTokenException(handledType(), JsonToken.VALUE_NUMBER_INT, "expected int or string token");
+ return null; // unreachable ... required for compiler, but ctxt.reportWrongTokenException always throws
}
}
}
diff --git a/processing/src/test/java/org/apache/druid/jackson/DefaultObjectMapperTest.java b/processing/src/test/java/org/apache/druid/jackson/DefaultObjectMapperTest.java
index 92c8a2cb2989..ae461d26c2a7 100644
--- a/processing/src/test/java/org/apache/druid/jackson/DefaultObjectMapperTest.java
+++ b/processing/src/test/java/org/apache/druid/jackson/DefaultObjectMapperTest.java
@@ -56,6 +56,20 @@ public void testDateTime() throws Exception
final DateTime time = DateTimes.nowUtc();
Assert.assertEquals(StringUtils.format("\"%s\"", time), mapper.writeValueAsString(time));
+
+ // string token
+ Assert.assertEquals(time, mapper.readValue(StringUtils.format("\"%s\"", time), DateTime.class));
+
+ // int token
+ DateTime result = mapper.readValue("1717267200000", DateTime.class);
+ Assert.assertEquals(DateTimes.utc(1717267200000L), result);
+
+ // unexpected token
+ String badString = "{\"dateTime\": true}";
+ Exception ex = Assert.assertThrows(Exception.class, () -> {
+ mapper.readValue(badString, DateTime.class);
+ });
+ Assert.assertTrue(ex.getMessage().contains("expected int or string token"));
}
@Test
diff --git a/quidem-ut/pom.xml b/quidem-ut/pom.xml
index c8d50c0d7969..5cab737337f0 100644
--- a/quidem-ut/pom.xml
+++ b/quidem-ut/pom.xml
@@ -286,6 +286,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.google.guava
diff --git a/server/pom.xml b/server/pom.xml
index 5de233b37059..285e51ee7ed5 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -90,10 +90,22 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-json-provider
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.fasterxml.jackson.dataformat
diff --git a/services/pom.xml b/services/pom.xml
index 570e48da1669..43a82aa8f5c0 100644
--- a/services/pom.xml
+++ b/services/pom.xml
@@ -124,6 +124,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-smile-provider
+
+
+ javax.xml.bind
+ jaxb-api
+
+
com.opencsv