diff --git a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JdbcOAuth2AuthorizationService.java b/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JdbcOAuth2AuthorizationService.java index 824eb0e3..0f66366f 100644 --- a/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JdbcOAuth2AuthorizationService.java +++ b/oauth2-authorization-server/src/main/java/org/springframework/security/oauth2/server/authorization/JdbcOAuth2AuthorizationService.java @@ -29,6 +29,7 @@ import java.util.Map; import java.util.Set; import java.util.function.Function; +import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.Module; import com.fasterxml.jackson.databind.ObjectMapper; @@ -436,10 +437,9 @@ public class JdbcOAuth2AuthorizationService implements OAuth2AuthorizationServic return this.objectMapper; } - @SuppressWarnings("unchecked") private Map parseMap(String data) { try { - return this.objectMapper.readValue(data, Map.class); + return this.objectMapper.readValue(data, new TypeReference>() {}); } catch (Exception ex) { throw new IllegalArgumentException(ex.getMessage(), ex); } @@ -542,7 +542,6 @@ public class JdbcOAuth2AuthorizationService implements OAuth2AuthorizationServic return parameters; } - @SuppressWarnings("unchecked") private String writeMap(Map data) { try { return this.objectMapper.writeValueAsString(data);