diff --git a/commons/selfservice/core/src/main/java/org/forgerock/selfservice/core/config/ClassNameFallbackPropertyTypeDeserializer.java b/commons/selfservice/core/src/main/java/org/forgerock/selfservice/core/config/ClassNameFallbackPropertyTypeDeserializer.java index b7bbfd65f..d2832fa77 100644 --- a/commons/selfservice/core/src/main/java/org/forgerock/selfservice/core/config/ClassNameFallbackPropertyTypeDeserializer.java +++ b/commons/selfservice/core/src/main/java/org/forgerock/selfservice/core/config/ClassNameFallbackPropertyTypeDeserializer.java @@ -12,6 +12,7 @@ * information: "Portions copyright [year] [name of copyright owner]". * * Copyright 2015 ForgeRock AS. + * Portions copyright 2020-2026 3A Systems LLC. */ package org.forgerock.selfservice.core.config; @@ -79,7 +80,7 @@ protected Object _deserializeTypedUsingDefaultImpl(JsonParser jsonParser, // ensure the type we found is assignable to the base type requested by deserialization; // typically this is the interface or base class if (_baseType != null && _baseType.getClass() == type.getClass()) { - type = _baseType.forcedNarrowBy(type.getRawClass()); + type = context.getTypeFactory().constructSpecializedType(_baseType, type.getRawClass()); } // find an appropriate deserializer for this type and deserialize JsonDeserializer deser = context.findContextualValueDeserializer(type, _property); diff --git a/pom.xml b/pom.xml index 825f7a947..57d70d883 100644 --- a/pom.xml +++ b/pom.xml @@ -202,7 +202,7 @@ true - 2.15.4 + 2.18.6 2.0.17 1.6.11 1.7.15.1