Skip to content

Commit

Permalink
Merge pull request #344 from Adyen/feature/AD-12a
Browse files Browse the repository at this point in the history
Apple pay express redirect fix
  • Loading branch information
pjaneta authored Feb 8, 2024
2 parents b88e9f0 + ea53e83 commit ea4f23d
Showing 1 changed file with 21 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ public String enterStep(final Model model, final RedirectAttributes redirectAttr
try {
adyenCheckoutFacade.initializeSummaryData(model);
} catch (ApiException e) {
LOGGER.error("Initialize summary data failed. ",e);
LOGGER.error("Initialize summary data failed. ", e);

}

Expand Down Expand Up @@ -274,7 +274,7 @@ public String placeOrder(@ModelAttribute("placeOrderForm") final PlaceOrderForm
} catch (AdyenNonAuthorizedPaymentException e) {
LOGGER.info(HANDLING_ADYEN_NON_AUTHORIZED_PAYMENT_EXCEPTION);
PaymentResult paymentResult = e.getPaymentResult();
if (Objects.nonNull(paymentResult)){
if (Objects.nonNull(paymentResult)) {
if (paymentResult.isRefused()) {
errorMessage = getErrorMessageByRefusalReason(paymentResult.getRefusalReason());
LOGGER.info("Payment " + paymentResult.getPspReference() + " is refused " + errorMessage);
Expand Down Expand Up @@ -701,12 +701,28 @@ protected String validateOrderFormJson(final PlaceOrderForm placeOrderForm) {

return StringUtils.EMPTY;
}

@PostMapping(value = "/component-result-express")
public String handleComponentResultExpress(final RedirectAttributes redirectAttributes,
@RequestHeader(value = HttpHeaders.REFERER, required = false) final String referrer) {
GlobalMessages.addFlashMessage(redirectAttributes, GlobalMessages.ERROR_MESSAGES_HOLDER, CHECKOUT_ERROR_AUTHORIZATION_PAYMENT_ERROR);
public String handleComponentResultExpress(final HttpServletRequest request, final RedirectAttributes redirectAttributes,
@RequestHeader(value = HttpHeaders.REFERER, required = false) final String referrer) throws Exception {
String resultData = request.getParameter("resultData");
String isResultError = request.getParameter("isResultError");

if (isValidResult(resultData, isResultError)) {
try {
OrderData orderData = adyenCheckoutFacade.handleComponentResult(resultData);
return redirectToOrderConfirmationPage(orderData);
} catch (AdyenNonAuthorizedPaymentException e) {
GlobalMessages.addFlashMessage(redirectAttributes, GlobalMessages.ERROR_MESSAGES_HOLDER, CHECKOUT_ERROR_AUTHORIZATION_PAYMENT_ERROR);
return "redirect:" + referrer;
}
}

GlobalMessages.addFlashMessage(redirectAttributes, GlobalMessages.ERROR_MESSAGES_HOLDER, CHECKOUT_ERROR_AUTHORIZATION_PAYMENT_ERROR);
return "redirect:" + referrer;
}


@PostMapping(value = "/component-result")
@RequireHardLogIn
public String handleComponentResult(final HttpServletRequest request,
Expand Down

0 comments on commit ea4f23d

Please sign in to comment.