WICKET-6097 JsonRequestLogger --> JsonMappingException --> StackOverflowError Infinite recursion
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/4904e4cf Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/4904e4cf Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/4904e4cf Branch: refs/heads/lambdas Commit: 4904e4cf25c7f04874e3ccfbfcc962d3ed0a13a6 Parents: a04959e Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Thu Feb 18 21:26:23 2016 +0100 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Thu Feb 18 21:28:23 2016 +0100 ---------------------------------------------------------------------- pom.xml | 2 +- .../requestlogger/JsonRequestLogger.java | 22 ++++++-------------- 2 files changed, 7 insertions(+), 17 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/4904e4cf/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index 3e65fe0..95169e2 100644 --- a/pom.xml +++ b/pom.xml @@ -226,7 +226,7 @@ <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> - <version>2.6.3</version> + <version>2.7.1-1</version> <optional>true</optional> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/wicket/blob/4904e4cf/wicket-extensions/src/main/java/org/apache/wicket/extensions/requestlogger/JsonRequestLogger.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/requestlogger/JsonRequestLogger.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/requestlogger/JsonRequestLogger.java index 3b33d15..95a0aaa 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/requestlogger/JsonRequestLogger.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/requestlogger/JsonRequestLogger.java @@ -19,11 +19,9 @@ package org.apache.wicket.extensions.requestlogger; import java.io.IOException; import java.io.Serializable; -import com.fasterxml.jackson.core.JsonGenerationException; -import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; -import com.fasterxml.jackson.databind.introspect.AnnotatedClass; +import com.fasterxml.jackson.databind.introspect.Annotated; import com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector; import com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter; import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider; @@ -39,9 +37,9 @@ import org.slf4j.LoggerFactory; * <pre> * {@literal * <dependency> - * <groupId>org.codehaus.jackson</groupId> - * <artifactId>jackson-mapper-asl</artifactId> - * <version>1.8.5</version> + * <groupId>com.fasterxml.jackson.core</groupId> + * <artifactId>jackson-databind</artifactId> + * <version>2.7.1</version> * </dependency> * } * </pre> @@ -60,7 +58,7 @@ public class JsonRequestLogger extends AbstractRequestLogger private static final class FilteredIntrospector extends JacksonAnnotationIntrospector { @Override - public Object findFilterId(AnnotatedClass ac) + public Object findFilterId(Annotated a) { return "default"; } @@ -105,7 +103,7 @@ public class JsonRequestLogger extends AbstractRequestLogger SimpleFilterProvider filters = new SimpleFilterProvider(); filters.addFilter("default", SimpleBeanPropertyFilter.serializeAllExcept("eventTarget", "responseTarget")); - mapper.setFilters(filters); + mapper.setFilterProvider(filters); mapper.setAnnotationIntrospector(new FilteredIntrospector()); } @@ -132,14 +130,6 @@ public class JsonRequestLogger extends AbstractRequestLogger { return getMapper().writeValueAsString(new RequestSessionTuple(rd, sd)); } - catch (JsonGenerationException e) - { - throw new RuntimeException(e); - } - catch (JsonMappingException e) - { - throw new RuntimeException(e); - } catch (IOException e) { throw new RuntimeException(e);
