From 1d8329dac5ecc1bab25ea03a3b1a219430c31768 Mon Sep 17 00:00:00 2001
From: PJaneta
Date: Wed, 2 Oct 2024 09:47:41 +0200
Subject: [PATCH] AD-325 Apple pay doesn't work
---
.../controllers/PaymentMethodsController.java | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/adyenocc/src/com/adyen/commerce/controllers/PaymentMethodsController.java b/adyenocc/src/com/adyen/commerce/controllers/PaymentMethodsController.java
index 09fdc975..6acd1acc 100644
--- a/adyenocc/src/com/adyen/commerce/controllers/PaymentMethodsController.java
+++ b/adyenocc/src/com/adyen/commerce/controllers/PaymentMethodsController.java
@@ -7,6 +7,9 @@
import com.adyen.service.exception.ApiException;
import com.adyen.v6.dto.CheckoutConfigDTO;
import com.adyen.v6.facades.AdyenCheckoutFacade;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import de.hybris.platform.commerceservices.request.mapping.annotation.ApiVersion;
import de.hybris.platform.webservicescommons.swagger.ApiBaseSiteIdUserIdAndCartIdParam;
import io.swagger.v3.oas.annotations.Operation;
@@ -24,6 +27,13 @@
@Tag(name = "Adyen")
public class PaymentMethodsController
{
+ protected static ObjectMapper objectMapper;
+
+ static {
+ objectMapper = new ObjectMapper();
+ objectMapper.registerModule(new JavaTimeModule());
+ }
+
@Autowired
private AdyenCheckoutFacade adyenCheckoutFacade;
@@ -32,7 +42,8 @@ public class PaymentMethodsController
@Operation(operationId = "getCheckoutConfiguration", summary = "Get checkout configuration", description =
"Returns configuration for Adyen dropin component")
@ApiBaseSiteIdUserIdAndCartIdParam
- public ResponseEntity getCheckoutConfiguration() throws ApiException {
- return ResponseEntity.ok().body(adyenCheckoutFacade.getReactCheckoutConfig());
+ public ResponseEntity getCheckoutConfiguration() throws ApiException, JsonProcessingException {
+ String response = objectMapper.writeValueAsString(adyenCheckoutFacade.getReactCheckoutConfig());
+ return ResponseEntity.ok().body(response);
}
}