diff --git a/src/main/java/it/gov/pagopa/payments/endpoints/PartnerEndpoint.java b/src/main/java/it/gov/pagopa/payments/endpoints/PartnerEndpoint.java index 87c5cc72..79c7f5c7 100644 --- a/src/main/java/it/gov/pagopa/payments/endpoints/PartnerEndpoint.java +++ b/src/main/java/it/gov/pagopa/payments/endpoints/PartnerEndpoint.java @@ -14,13 +14,12 @@ import it.gov.pagopa.payments.model.partner.PaSendRTV2Response; import it.gov.pagopa.payments.model.partner.PaVerifyPaymentNoticeReq; import it.gov.pagopa.payments.model.partner.PaVerifyPaymentNoticeRes; +import it.gov.pagopa.payments.service.PartnerService; import java.io.IOException; import javax.xml.bind.JAXBElement; import javax.xml.datatype.DatatypeConfigurationException; import javax.xml.parsers.ParserConfigurationException; import javax.xml.stream.XMLStreamException; - -import it.gov.pagopa.payments.service.PartnerService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.ws.server.endpoint.annotation.Endpoint; @@ -96,11 +95,8 @@ public JAXBElement paSendRTV2( @ResponsePayload public JAXBElement paDemandPaymentNotice( @RequestPayload JAXBElement request) - throws DatatypeConfigurationException, - ParserConfigurationException, - IOException, - SAXException, - XMLStreamException { + throws DatatypeConfigurationException, ParserConfigurationException, IOException, + SAXException, XMLStreamException { log.info(" paDemandPaymentNotice START "); return factory.createPaDemandPaymentNoticeResponse( diff --git a/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapFaultDefinitionExceptionResolver.java b/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapFaultDefinitionExceptionResolver.java index 4fa81977..dd0af1d8 100644 --- a/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapFaultDefinitionExceptionResolver.java +++ b/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapFaultDefinitionExceptionResolver.java @@ -1,6 +1,7 @@ package it.gov.pagopa.payments.endpoints.validation; import it.gov.pagopa.payments.endpoints.validation.exceptions.PartnerValidationException; +import lombok.extern.slf4j.Slf4j; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; @@ -9,10 +10,13 @@ @Component @Order(Ordered.HIGHEST_PRECEDENCE) +@Slf4j public class SoapFaultDefinitionExceptionResolver implements EndpointExceptionResolver { public boolean resolveException(MessageContext messageContext, Object endpoint, Exception ex) { + log.error("an Error occurred: {}",ex.getMessage(), ex); + if (ex instanceof PartnerValidationException) { throw (PartnerValidationException) ex; } diff --git a/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapMessageDispatcher.java b/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapMessageDispatcher.java index b7d41749..09209848 100644 --- a/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapMessageDispatcher.java +++ b/src/main/java/it/gov/pagopa/payments/endpoints/validation/SoapMessageDispatcher.java @@ -74,7 +74,8 @@ protected void doService( try { callService(httpServletRequest, httpServletResponse); - } catch (PartnerValidationException e) { + } + catch (PartnerValidationException e) { log.error("Processing resulted in exception: " + e.getMessage()); faultCode = e.getError().getFaultCode(); diff --git a/src/main/java/it/gov/pagopa/payments/model/DebtPositionStatus.java b/src/main/java/it/gov/pagopa/payments/model/DebtPositionStatus.java index f14ab68f..48593819 100644 --- a/src/main/java/it/gov/pagopa/payments/model/DebtPositionStatus.java +++ b/src/main/java/it/gov/pagopa/payments/model/DebtPositionStatus.java @@ -1,5 +1,8 @@ package it.gov.pagopa.payments.model; +import lombok.ToString; + +@ToString public enum DebtPositionStatus { DRAFT, PUBLISHED, diff --git a/src/main/java/it/gov/pagopa/payments/model/PaymentOptionStatus.java b/src/main/java/it/gov/pagopa/payments/model/PaymentOptionStatus.java index cea3f328..6442513d 100644 --- a/src/main/java/it/gov/pagopa/payments/model/PaymentOptionStatus.java +++ b/src/main/java/it/gov/pagopa/payments/model/PaymentOptionStatus.java @@ -1,5 +1,8 @@ package it.gov.pagopa.payments.model; +import lombok.ToString; + +@ToString public enum PaymentOptionStatus { PO_UNPAID, PO_PAID, diff --git a/src/main/java/it/gov/pagopa/payments/model/PaymentsModelResponse.java b/src/main/java/it/gov/pagopa/payments/model/PaymentsModelResponse.java index 48b2c633..32d80c0e 100644 --- a/src/main/java/it/gov/pagopa/payments/model/PaymentsModelResponse.java +++ b/src/main/java/it/gov/pagopa/payments/model/PaymentsModelResponse.java @@ -5,9 +5,11 @@ import java.util.List; import lombok.Data; import lombok.NoArgsConstructor; +import lombok.ToString; @Data @NoArgsConstructor +@ToString public class PaymentsModelResponse implements Serializable { private static final long serialVersionUID = -4897632346879847721L; diff --git a/src/main/java/it/gov/pagopa/payments/model/PaymentsTransferModelResponse.java b/src/main/java/it/gov/pagopa/payments/model/PaymentsTransferModelResponse.java index 0c8271f7..09730316 100644 --- a/src/main/java/it/gov/pagopa/payments/model/PaymentsTransferModelResponse.java +++ b/src/main/java/it/gov/pagopa/payments/model/PaymentsTransferModelResponse.java @@ -4,9 +4,11 @@ import java.time.LocalDateTime; import lombok.Data; import lombok.NoArgsConstructor; +import lombok.ToString; @Data @NoArgsConstructor +@ToString public class PaymentsTransferModelResponse implements Serializable { private String organizationFiscalCode; diff --git a/src/main/java/it/gov/pagopa/payments/service/PartnerService.java b/src/main/java/it/gov/pagopa/payments/service/PartnerService.java index 8abfb465..955b7dc6 100644 --- a/src/main/java/it/gov/pagopa/payments/service/PartnerService.java +++ b/src/main/java/it/gov/pagopa/payments/service/PartnerService.java @@ -15,6 +15,33 @@ import it.gov.pagopa.payments.mapper.ConvertTableEntityToReceiptEntity; import it.gov.pagopa.payments.model.*; import it.gov.pagopa.payments.model.partner.*; +import it.gov.pagopa.payments.model.partner.CtEntityUniqueIdentifier; +import it.gov.pagopa.payments.model.partner.CtPaymentOptionDescriptionPA; +import it.gov.pagopa.payments.model.partner.CtPaymentOptionsDescriptionListPA; +import it.gov.pagopa.payments.model.partner.CtPaymentPA; +import it.gov.pagopa.payments.model.partner.CtPaymentPAV2; +import it.gov.pagopa.payments.model.partner.CtQrCode; +import it.gov.pagopa.payments.model.partner.CtRichiestaMarcaDaBollo; +import it.gov.pagopa.payments.model.partner.CtSubject; +import it.gov.pagopa.payments.model.partner.CtTransferListPA; +import it.gov.pagopa.payments.model.partner.CtTransferListPAV2; +import it.gov.pagopa.payments.model.partner.CtTransferPA; +import it.gov.pagopa.payments.model.partner.CtTransferPAV2; +import it.gov.pagopa.payments.model.partner.PaDemandPaymentNoticeRequest; +import it.gov.pagopa.payments.model.partner.PaDemandPaymentNoticeResponse; +import it.gov.pagopa.payments.model.partner.PaGetPaymentReq; +import it.gov.pagopa.payments.model.partner.PaGetPaymentRes; +import it.gov.pagopa.payments.model.partner.PaGetPaymentV2Request; +import it.gov.pagopa.payments.model.partner.PaGetPaymentV2Response; +import it.gov.pagopa.payments.model.partner.PaSendRTReq; +import it.gov.pagopa.payments.model.partner.PaSendRTRes; +import it.gov.pagopa.payments.model.partner.PaSendRTV2Request; +import it.gov.pagopa.payments.model.partner.PaSendRTV2Response; +import it.gov.pagopa.payments.model.partner.PaVerifyPaymentNoticeRes; +import it.gov.pagopa.payments.model.partner.StAmountOption; +import it.gov.pagopa.payments.model.partner.StEntityUniqueIdentifierType; +import it.gov.pagopa.payments.model.partner.StOutcome; +import it.gov.pagopa.payments.model.partner.StTransferType; import it.gov.pagopa.payments.model.spontaneous.*; import it.gov.pagopa.payments.utils.CommonUtil; import it.gov.pagopa.payments.utils.CustomizedMapper; @@ -115,11 +142,18 @@ public PaVerifyPaymentNoticeRes paVerifyPaymentNotice(PaVerifyPaymentNoticeReq r checkDebtPositionStatus(paymentOption); + PaVerifyPaymentNoticeRes result; log.info( "[paVerifyPaymentNotice] Response OK generation [noticeNumber={}]", request.getQrCode().getNoticeNumber()); - - return this.generatePaVerifyPaymentNoticeResponse(paymentOption); + try { + result = this.generatePaVerifyPaymentNoticeResponse(paymentOption); + } + catch (Exception e){ + log.error("[paVerifyPaymentNotice] paymentOption {}", paymentOption, e); + throw e; + } + return result; } @Transactional(readOnly = true)