From 91e28c6da926669f58af7edb66d5e89da150aa5c Mon Sep 17 00:00:00 2001 From: Linus Norton Date: Tue, 31 Mar 2026 07:33:17 +0100 Subject: [PATCH] Replace deprecated PropertyNamingStrategy with PropertyNamingStrategies Jackson 2.21 removed the deprecated inner classes from PropertyNamingStrategy (e.g. SnakeCaseStrategy). This breaks any downstream project that upgrades to Jackson 2.21+ (via Spring Boot 3.5.13+) with a ClassNotFoundException. Migrate all @JsonNaming annotations to use the replacement PropertyNamingStrategies class, which has been available since Jackson 2.12. --- .../payments/client/functional/env/CreateUserRequest.java | 4 ++-- .../reform/payments/client/functional/env/LoginResponse.java | 4 ++-- .../reform/payments/client/functional/env/RoleDetail.java | 4 ++-- .../reform/payments/client/functional/env/UserDetails.java | 4 ++-- .../uk/gov/hmcts/reform/payments/client/models/FeeDto.java | 4 ++-- .../uk/gov/hmcts/reform/payments/client/models/LinkDto.java | 4 ++-- .../uk/gov/hmcts/reform/payments/client/models/LinksDto.java | 4 ++-- .../gov/hmcts/reform/payments/client/models/PaymentDto.java | 4 ++-- .../hmcts/reform/payments/client/models/StatusHistoryDto.java | 4 ++-- .../gov/hmcts/reform/payments/request/CardPaymentRequest.java | 4 ++-- .../reform/payments/request/CreditAccountPaymentRequest.java | 4 ++-- 11 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/CreateUserRequest.java b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/CreateUserRequest.java index 41d81e36..ee1fca2a 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/CreateUserRequest.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/CreateUserRequest.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.functional.env; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -10,7 +10,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/LoginResponse.java b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/LoginResponse.java index cd589b7e..619d1248 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/LoginResponse.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/LoginResponse.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.functional.env; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -11,7 +11,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/RoleDetail.java b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/RoleDetail.java index 5fdcb059..09a4e5c6 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/RoleDetail.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/RoleDetail.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.functional.env; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -10,7 +10,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/UserDetails.java b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/UserDetails.java index 264f742f..e924ff63 100644 --- a/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/UserDetails.java +++ b/src/functionalTest/java/uk/gov/hmcts/reform/payments/client/functional/env/UserDetails.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.functional.env; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -10,7 +10,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/main/java/uk/gov/hmcts/reform/payments/client/models/FeeDto.java b/src/main/java/uk/gov/hmcts/reform/payments/client/models/FeeDto.java index c96744f7..1f77518d 100644 --- a/src/main/java/uk/gov/hmcts/reform/payments/client/models/FeeDto.java +++ b/src/main/java/uk/gov/hmcts/reform/payments/client/models/FeeDto.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.models; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -12,7 +12,7 @@ @JsonIgnoreProperties(ignoreUnknown = true) @Data -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinkDto.java b/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinkDto.java index 9e2b01dc..4b510d19 100644 --- a/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinkDto.java +++ b/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinkDto.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.models; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -13,7 +13,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinksDto.java b/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinksDto.java index 0f4790f0..7b063ad6 100644 --- a/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinksDto.java +++ b/src/main/java/uk/gov/hmcts/reform/payments/client/models/LinksDto.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.models; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -10,7 +10,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/main/java/uk/gov/hmcts/reform/payments/client/models/PaymentDto.java b/src/main/java/uk/gov/hmcts/reform/payments/client/models/PaymentDto.java index f8c5fec4..c35b77e1 100644 --- a/src/main/java/uk/gov/hmcts/reform/payments/client/models/PaymentDto.java +++ b/src/main/java/uk/gov/hmcts/reform/payments/client/models/PaymentDto.java @@ -2,7 +2,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -14,7 +14,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/main/java/uk/gov/hmcts/reform/payments/client/models/StatusHistoryDto.java b/src/main/java/uk/gov/hmcts/reform/payments/client/models/StatusHistoryDto.java index e030d08a..63d7101a 100644 --- a/src/main/java/uk/gov/hmcts/reform/payments/client/models/StatusHistoryDto.java +++ b/src/main/java/uk/gov/hmcts/reform/payments/client/models/StatusHistoryDto.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.client.models; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -12,7 +12,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/main/java/uk/gov/hmcts/reform/payments/request/CardPaymentRequest.java b/src/main/java/uk/gov/hmcts/reform/payments/request/CardPaymentRequest.java index 2493f786..44936327 100644 --- a/src/main/java/uk/gov/hmcts/reform/payments/request/CardPaymentRequest.java +++ b/src/main/java/uk/gov/hmcts/reform/payments/request/CardPaymentRequest.java @@ -1,7 +1,7 @@ package uk.gov.hmcts.reform.payments.request; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -13,7 +13,7 @@ @Data @JsonIgnoreProperties(ignoreUnknown = true) -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) @Builder @NoArgsConstructor @AllArgsConstructor diff --git a/src/main/java/uk/gov/hmcts/reform/payments/request/CreditAccountPaymentRequest.java b/src/main/java/uk/gov/hmcts/reform/payments/request/CreditAccountPaymentRequest.java index d520287a..3f063d74 100644 --- a/src/main/java/uk/gov/hmcts/reform/payments/request/CreditAccountPaymentRequest.java +++ b/src/main/java/uk/gov/hmcts/reform/payments/request/CreditAccountPaymentRequest.java @@ -1,6 +1,6 @@ package uk.gov.hmcts.reform.payments.request; -import com.fasterxml.jackson.databind.PropertyNamingStrategy; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.fasterxml.jackson.databind.annotation.JsonNaming; import lombok.AllArgsConstructor; import lombok.Builder; @@ -12,7 +12,7 @@ @Data @Builder @AllArgsConstructor -@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) public class CreditAccountPaymentRequest { private String accountNumber; private BigDecimal amount;