diff --git a/pom.xml b/pom.xml index eb0b34dc..6e15b2c1 100644 --- a/pom.xml +++ b/pom.xml @@ -48,6 +48,7 @@ v1-rev20201112-1.31.0 1.2.2 0.22.2 + 3.5.0 @@ -76,6 +77,18 @@ pom + + com.fasterxml.jackson.core + jackson-annotations + 3.0-rc5 + + + + tools.jackson.core + jackson-databind + 3.0.0-rc5 + + diff --git a/spring-cloud-vault-config/pom.xml b/spring-cloud-vault-config/pom.xml index a32c4044..27b24f0e 100644 --- a/spring-cloud-vault-config/pom.xml +++ b/spring-cloud-vault-config/pom.xml @@ -92,6 +92,16 @@ true + + tools.jackson.core + jackson-databind + + + + com.fasterxml.jackson.core + jackson-annotations + + diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java index 41b70f65..2ca0d606 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultReactiveHealthIndicator.java @@ -21,7 +21,6 @@ import java.util.Objects; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.ObjectMapper; import reactor.core.publisher.Mono; import org.springframework.boot.actuate.health.AbstractReactiveHealthIndicator; @@ -30,6 +29,7 @@ import org.springframework.boot.actuate.health.Health.Builder; import org.springframework.lang.Nullable; import org.springframework.vault.client.VaultHttpHeaders; import org.springframework.vault.core.ReactiveVaultOperations; +import org.springframework.vault.support.JacksonCompat; import org.springframework.vault.support.VaultHealth; import org.springframework.web.reactive.function.client.WebClientResponseException; @@ -51,9 +51,9 @@ public class VaultReactiveHealthIndicator extends AbstractReactiveHealthIndicato private static Mono deserializeError(WebClientResponseException e) { try { - ObjectMapper mapper = new ObjectMapper(); + JacksonCompat.ObjectMapperAccessor mapper = JacksonCompat.instance().getObjectMapperAccessor(); // Response is already materialized so not blocking here. - return Mono.just(mapper.readValue(e.getResponseBodyAsByteArray(), VaultHealthImpl.class)); + return Mono.just(mapper.deserialize(e.getResponseBodyAsByteArray(), VaultHealthImpl.class)); } catch (Exception jsonError) { UndeclaredThrowableException t = new UndeclaredThrowableException(jsonError); diff --git a/spring-cloud-vault-dependencies/pom.xml b/spring-cloud-vault-dependencies/pom.xml index a543c078..b631d4e8 100644 --- a/spring-cloud-vault-dependencies/pom.xml +++ b/spring-cloud-vault-dependencies/pom.xml @@ -21,6 +21,7 @@ 4.0.0-SNAPSHOT + 3.5.0