diff --git a/log4j-config-jackson/pom.xml b/log4j-config-jackson/pom.xml
index ab2125febef..aee9dd1387e 100644
--- a/log4j-config-jackson/pom.xml
+++ b/log4j-config-jackson/pom.xml
@@ -36,7 +36,7 @@
- com.fasterxml.jackson.core
+ tools.jackson.core
jackson-databind
diff --git a/log4j-config-jackson/src/main/java/org/apache/logging/log4j/config/jackson/AbstractJacksonConfiguration.java b/log4j-config-jackson/src/main/java/org/apache/logging/log4j/config/jackson/AbstractJacksonConfiguration.java
index b6fc2c3cd98..c8ce6666f90 100644
--- a/log4j-config-jackson/src/main/java/org/apache/logging/log4j/config/jackson/AbstractJacksonConfiguration.java
+++ b/log4j-config-jackson/src/main/java/org/apache/logging/log4j/config/jackson/AbstractJacksonConfiguration.java
@@ -16,18 +16,12 @@
*/
package org.apache.logging.log4j.config.jackson;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.Map.Entry;
import java.util.TreeMap;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.AbstractConfiguration;
@@ -38,6 +32,10 @@
import org.apache.logging.log4j.core.config.status.StatusConfiguration;
import org.apache.logging.log4j.plugins.Node;
import org.apache.logging.log4j.plugins.model.PluginType;
+import tools.jackson.databind.JsonNode;
+import tools.jackson.databind.ObjectMapper;
+import tools.jackson.databind.node.JsonNodeFactory;
+import tools.jackson.databind.node.ObjectNode;
/**
* Base class for all Jackson-based configurations.
@@ -116,10 +114,8 @@ protected abstract Configuration createConfiguration(
@Override
public void setup() {
- final Iterator> iter = root.fields();
final List children = rootNode.getChildren();
- while (iter.hasNext()) {
- final Map.Entry entry = iter.next();
+ for (Map.Entry entry : root.properties()) {
final JsonNode n = entry.getValue();
if (n.isObject()) {
LOGGER.debug("Processing node for object {}", entry.getKey());
@@ -154,10 +150,8 @@ private Node constructNode(final String name, final Node parent, final JsonNode
final PluginType> type = corePlugins.get(getType(jsonNode, name));
final Node node = new Node(parent, name, type);
processAttributes(node, jsonNode);
- final Iterator> iter = jsonNode.fields();
final List children = node.getChildren();
- while (iter.hasNext()) {
- final Map.Entry entry = iter.next();
+ for (Map.Entry entry : jsonNode.properties()) {
final JsonNode n = entry.getValue();
if (n.isArray() || n.isObject()) {
if (type == null) {
@@ -195,9 +189,7 @@ private Node constructNode(final String name, final Node parent, final JsonNode
}
private String getType(final JsonNode node, final String name) {
- final Iterator> iter = node.fields();
- while (iter.hasNext()) {
- final Map.Entry entry = iter.next();
+ for (Map.Entry entry : node.properties()) {
if ("type".equalsIgnoreCase(entry.getKey())) {
final JsonNode n = entry.getValue();
if (n.isValueNode()) {
@@ -210,9 +202,7 @@ private String getType(final JsonNode node, final String name) {
private void processAttributes(final Node parent, final JsonNode node) {
final Map attrs = parent.getAttributes();
- final Iterator> iter = node.fields();
- while (iter.hasNext()) {
- final Map.Entry entry = iter.next();
+ for (Map.Entry entry : node.properties()) {
if (!"type".equalsIgnoreCase(entry.getKey())) {
final JsonNode n = entry.getValue();
if (n.isValueNode()) {
diff --git a/log4j-config-properties/pom.xml b/log4j-config-properties/pom.xml
index 14a6a5691ce..f8602487ee1 100644
--- a/log4j-config-properties/pom.xml
+++ b/log4j-config-properties/pom.xml
@@ -38,7 +38,7 @@
- com.fasterxml.jackson.dataformat
+ tools.jackson.dataformat
jackson-dataformat-properties
diff --git a/log4j-config-properties/src/main/java/org/apache/logging/log4j/config/properties/JavaPropsConfiguration.java b/log4j-config-properties/src/main/java/org/apache/logging/log4j/config/properties/JavaPropsConfiguration.java
index 92d16ff6901..c89d5562c6a 100644
--- a/log4j-config-properties/src/main/java/org/apache/logging/log4j/config/properties/JavaPropsConfiguration.java
+++ b/log4j-config-properties/src/main/java/org/apache/logging/log4j/config/properties/JavaPropsConfiguration.java
@@ -16,13 +16,12 @@
*/
package org.apache.logging.log4j.config.properties;
-import com.fasterxml.jackson.core.JsonParser;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.dataformat.javaprop.JavaPropsMapper;
import org.apache.logging.log4j.config.jackson.AbstractJacksonConfiguration;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.ConfigurationSource;
+import tools.jackson.databind.ObjectMapper;
+import tools.jackson.dataformat.javaprop.JavaPropsMapper;
/**
* Creates a Node hierarchy from a properties file.
@@ -41,7 +40,6 @@ protected Configuration createConfiguration(
protected ObjectMapper getObjectMapper() {
return JavaPropsMapper.builder()
- .configure(JsonParser.Feature.ALLOW_COMMENTS, true)
.nodeFactory(SortingNodeFactory.INSTANCE)
.build();
}
diff --git a/log4j-config-yaml/pom.xml b/log4j-config-yaml/pom.xml
index 8b02dd275d1..b6f7f56e973 100644
--- a/log4j-config-yaml/pom.xml
+++ b/log4j-config-yaml/pom.xml
@@ -38,7 +38,7 @@
- com.fasterxml.jackson.dataformat
+ tools.jackson.dataformat
jackson-dataformat-yaml
diff --git a/log4j-config-yaml/src/main/java/org/apache/logging/log4j/config/yaml/YamlConfiguration.java b/log4j-config-yaml/src/main/java/org/apache/logging/log4j/config/yaml/YamlConfiguration.java
index 0deff0b9dd1..bbc79fd4148 100644
--- a/log4j-config-yaml/src/main/java/org/apache/logging/log4j/config/yaml/YamlConfiguration.java
+++ b/log4j-config-yaml/src/main/java/org/apache/logging/log4j/config/yaml/YamlConfiguration.java
@@ -16,13 +16,12 @@
*/
package org.apache.logging.log4j.config.yaml;
-import com.fasterxml.jackson.core.JsonParser;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.dataformat.yaml.YAMLMapper;
import org.apache.logging.log4j.config.jackson.AbstractJacksonConfiguration;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.ConfigurationSource;
+import tools.jackson.databind.ObjectMapper;
+import tools.jackson.dataformat.yaml.YAMLMapper;
/**
* Creates a Node hierarchy from a YAML file.
@@ -41,8 +40,6 @@ protected Configuration createConfiguration(
@Override
protected ObjectMapper getObjectMapper() {
- return YAMLMapper.builder()
- .configure(JsonParser.Feature.ALLOW_COMMENTS, true)
- .build();
+ return YAMLMapper.builder().build();
}
}
diff --git a/log4j-core-test/pom.xml b/log4j-core-test/pom.xml
index 5b9744f862c..545a2d98a7c 100644
--- a/log4j-core-test/pom.xml
+++ b/log4j-core-test/pom.xml
@@ -156,28 +156,28 @@
- com.fasterxml.jackson.core
+ tools.jackson.core
jackson-core
true
- com.fasterxml.jackson.core
+ tools.jackson.core
jackson-databind
true
- com.fasterxml.jackson.dataformat
+ tools.jackson.dataformat
jackson-dataformat-xml
true
- com.fasterxml.jackson.dataformat
+ tools.jackson.dataformat
jackson-dataformat-yaml
true
@@ -315,6 +315,14 @@
test
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ ${jackson2.test.version}
+ test
+
+
org.xmlunit
xmlunit-core
diff --git a/log4j-docker/pom.xml b/log4j-docker/pom.xml
index 2b6c19f09e2..6234d394190 100644
--- a/log4j-docker/pom.xml
+++ b/log4j-docker/pom.xml
@@ -36,11 +36,6 @@
-
-
- com.fasterxml.jackson.core;substitute="jackson-core",
- com.fasterxml.jackson.databind;substitute="jackson-databind"
-
org.apache.logging.log4j.core
@@ -59,11 +54,11 @@
jackson-annotations
- com.fasterxml.jackson.core
+ tools.jackson.core
jackson-core
- com.fasterxml.jackson.core
+ tools.jackson.core
jackson-databind
diff --git a/log4j-docker/src/main/java/org/apache/logging/log4j/docker/DockerLookup.java b/log4j-docker/src/main/java/org/apache/logging/log4j/docker/DockerLookup.java
index d9f0f42dacd..363312a8f87 100644
--- a/log4j-docker/src/main/java/org/apache/logging/log4j/docker/DockerLookup.java
+++ b/log4j-docker/src/main/java/org/apache/logging/log4j/docker/DockerLookup.java
@@ -16,8 +16,6 @@
*/
package org.apache.logging.log4j.docker;
-import com.fasterxml.jackson.core.type.TypeReference;
-import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.net.URI;
import java.net.URL;
@@ -33,6 +31,8 @@
import org.apache.logging.log4j.kit.env.PropertyEnvironment;
import org.apache.logging.log4j.plugins.Plugin;
import org.apache.logging.log4j.status.StatusLogger;
+import tools.jackson.core.type.TypeReference;
+import tools.jackson.databind.ObjectMapper;
/**
* Looks up keys for a Docker container.
diff --git a/log4j-layout-template-json-test/pom.xml b/log4j-layout-template-json-test/pom.xml
index 0eaaedf87f7..e7dd53bb689 100644
--- a/log4j-layout-template-json-test/pom.xml
+++ b/log4j-layout-template-json-test/pom.xml
@@ -97,9 +97,11 @@
test
+
com.fasterxml.jackson.core
jackson-databind
+ ${jackson2.test.version}
test
diff --git a/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JacksonFixture.java b/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JacksonFixture.java
index aa518c57026..82b919127c1 100644
--- a/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JacksonFixture.java
+++ b/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JacksonFixture.java
@@ -16,7 +16,7 @@
*/
package org.apache.logging.log4j.layout.template.json;
-import com.fasterxml.jackson.databind.ObjectMapper;
+import tools.jackson.databind.ObjectMapper;
public final class JacksonFixture {
diff --git a/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java b/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java
index 662de8be5f6..ebaf948ebbe 100644
--- a/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java
+++ b/log4j-layout-template-json-test/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java
@@ -24,9 +24,6 @@
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.MappingIterator;
-import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.ByteArrayOutputStream;
import java.io.EOFException;
import java.io.IOException;
@@ -83,6 +80,9 @@
import org.apache.logging.log4j.plugins.Plugin;
import org.apache.logging.log4j.plugins.PluginFactory;
import org.junit.jupiter.api.Test;
+import tools.jackson.databind.JsonNode;
+import tools.jackson.databind.MappingIterator;
+import tools.jackson.databind.ObjectMapper;
@SuppressWarnings("DoubleBraceInitialization")
class JsonTemplateLayoutTest {
diff --git a/log4j-parent/pom.xml b/log4j-parent/pom.xml
index 510b8b0d171..eaa42c1c02d 100644
--- a/log4j-parent/pom.xml
+++ b/log4j-parent/pom.xml
@@ -111,7 +111,10 @@
3.0
2.2.2
2.7.4
- 2.19.1
+
+
+ 2.19.1
+ 3.0.0-rc5
2.0.1
3.3.4
4.0.5
@@ -200,7 +203,7 @@
- com.fasterxml.jackson
+ tools.jackson
jackson-bom
${jackson-bom.version}
pom
diff --git a/log4j-perf-test/pom.xml b/log4j-perf-test/pom.xml
index 0fed2e3aecc..2803d4ca53d 100644
--- a/log4j-perf-test/pom.xml
+++ b/log4j-perf-test/pom.xml
@@ -145,13 +145,13 @@
- com.fasterxml.jackson.core
+ tools.jackson.core
jackson-core
true
- com.fasterxml.jackson.core
+ tools.jackson.core
jackson-databind
true