11/*
2- * Copyright 2015-2021 the original author or authors.
2+ * Copyright 2015-2022 the original author or authors.
33 *
44 * Licensed under the Apache License, Version 2.0 (the "License");
55 * you may not use this file except in compliance with the License.
2929import com .fasterxml .jackson .databind .ObjectMapper ;
3030import com .fasterxml .jackson .databind .ObjectMapper .DefaultTyping ;
3131import com .fasterxml .jackson .databind .SerializerProvider ;
32- import com .fasterxml .jackson .databind .jsontype .impl . LaissezFaireSubTypeValidator ;
32+ import com .fasterxml .jackson .databind .jsontype .PolymorphicTypeValidator ;
3333import com .fasterxml .jackson .databind .module .SimpleModule ;
3434import com .fasterxml .jackson .databind .ser .SerializerFactory ;
3535import com .fasterxml .jackson .databind .ser .std .StdSerializer ;
@@ -59,6 +59,8 @@ public GenericJackson2JsonRedisSerializer() {
5959 * {@link JsonTypeInfo.Id#CLASS} will be used.
6060 *
6161 * @param classPropertyTypeName Name of the JSON property holding type information. Can be {@literal null}.
62+ * @see ObjectMapper#activateDefaultTypingAsProperty(PolymorphicTypeValidator, DefaultTyping, String)
63+ * @see ObjectMapper#activateDefaultTyping(PolymorphicTypeValidator, DefaultTyping, As)
6264 */
6365 public GenericJackson2JsonRedisSerializer (@ Nullable String classPropertyTypeName ) {
6466
@@ -69,9 +71,10 @@ public GenericJackson2JsonRedisSerializer(@Nullable String classPropertyTypeName
6971 registerNullValueSerializer (mapper , classPropertyTypeName );
7072
7173 if (StringUtils .hasText (classPropertyTypeName )) {
72- mapper .activateDefaultTypingAsProperty (LaissezFaireSubTypeValidator .instance , DefaultTyping .NON_FINAL , classPropertyTypeName );
74+ mapper .activateDefaultTypingAsProperty (mapper .getPolymorphicTypeValidator (), DefaultTyping .NON_FINAL ,
75+ classPropertyTypeName );
7376 } else {
74- mapper .activateDefaultTyping (LaissezFaireSubTypeValidator . instance , DefaultTyping .NON_FINAL , As .PROPERTY );
77+ mapper .activateDefaultTyping (mapper . getPolymorphicTypeValidator () , DefaultTyping .NON_FINAL , As .PROPERTY );
7578 }
7679 }
7780
0 commit comments