Skip to content

Commit

Permalink
fix: P4ADEV-1719 refactor ws endpoint and artifact (wsdl/xsd) (#14)
Browse files Browse the repository at this point in the history
  • Loading branch information
serdimic authored Jan 22, 2025
1 parent 2cdd2b0 commit 2bb4035
Show file tree
Hide file tree
Showing 12 changed files with 654 additions and 655 deletions.
4 changes: 2 additions & 2 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -284,8 +284,8 @@ jaxb {
extension = true
args = listOf("-wsdl", "-Xannotate")
outputDir = file("$projectDir/build/generated/jaxb/java")
schema = file("$rootDir/src/main/resources/soap/paForNode.wsdl")
bindings = layout.files("$rootDir/src/main/resources/soap/paForNode.xjb")
schema = file("$rootDir/src/main/resources/soap/wsdl/paForNode.wsdl")
bindings = layout.files("$rootDir/src/main/resources/soap/wsdl/paForNode.xjb")
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
Expand Down Expand Up @@ -56,10 +55,10 @@ public class SoapWebServiceConfig extends WsConfigurerAdapter {


public static final Map<String, String> XSD_NAME_PATH_MAP = Map.of(
XSD_PaForNode, WS_PATH_NODE,
XSD_SacCommonTypes, WS_PATH_NODE,
XSD_MarcaDaBollo, WS_PATH_NODE,
XSD_XmldsigCoreSchema, WS_PATH_NODE
XSD_PaForNode, "wsdl/xsd/",
XSD_SacCommonTypes, "xsd-common/",
XSD_MarcaDaBollo, "xsd-common/",
XSD_XmldsigCoreSchema, "xsd-common/"
);

private void registerWsdlDefinition(String path){
Expand Down Expand Up @@ -107,7 +106,7 @@ protected XsdSchema getXsdSchema(HttpServletRequest request) {
String uri = request.getRequestURI();
String name = WebUtils.extractFilenameFromUrlPath(uri);
String path = extractPathFromUrlPath(uri);
String xsdPath = request.getContextPath()+XSD_NAME_PATH_MAP.getOrDefault(name,"__NOT_FOUND__");
String xsdPath = request.getContextPath()+WS_PATH_NODE+XSD_NAME_PATH_MAP.getOrDefault(name,"__NOT_FOUND__");
if(xsdPath.equals(path))
return super.getXsdSchema(request);
else
Expand Down Expand Up @@ -144,29 +143,28 @@ public XsdSchemaCollection getXsdSchemaCollection() {


@Bean(name = PaForNodeEndpoint.NAME)
@ConditionalOnProperty(prefix = "fesp", name = "mode", havingValue = "local")
public Wsdl11Definition paForNodeEndpoint(XsdSchemaCollection xsdSchemaCollection) {
registerWsdlDefinition(WS_PATH_NODE +PaForNodeEndpoint.NAME);
return new SimpleWsdl11Definition(resourceLoader.getResource("classpath:soap/paForNode.wsdl"));
registerWsdlDefinition(WS_PATH_NODE + "wsdl/" + PaForNodeEndpoint.NAME);
return new SimpleWsdl11Definition(resourceLoader.getResource("classpath:soap/wsdl/paForNode.wsdl"));
}

@Bean(name = XSD_PaForNode)
public XsdSchema getPaForNodeXsd() {
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_PaForNode+".xsd"));
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_NAME_PATH_MAP.get(XSD_PaForNode)+XSD_PaForNode+".xsd"));
}

@Bean(name = XSD_SacCommonTypes)
public XsdSchema getSacCommonTypesXsd() {
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_SacCommonTypes+".xsd"));
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_NAME_PATH_MAP.get(XSD_SacCommonTypes)+XSD_SacCommonTypes+".xsd"));
}

@Bean(name = XSD_MarcaDaBollo)
public XsdSchema getMarcaDaBolloXsd() {
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_MarcaDaBollo+".xsd"));
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_NAME_PATH_MAP.get(XSD_MarcaDaBollo)+XSD_MarcaDaBollo+".xsd"));
}

@Bean(name = XSD_XmldsigCoreSchema)
public XsdSchema getXmldsigCoreSchemaXsd() {
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_XmldsigCoreSchema+".xsd"));
return new SimpleXsdSchema(new ClassPathResource(SOAP_RESOURCES_FOLDER+"/"+XSD_NAME_PATH_MAP.get(XSD_XmldsigCoreSchema)+XSD_XmldsigCoreSchema+".xsd"));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
import it.gov.pagopa.pu.pagopapayments.service.synchronouspayments.SynchronousPaymentService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.tuple.Pair;
import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
import org.springframework.ws.server.endpoint.annotation.Endpoint;
import org.springframework.ws.server.endpoint.annotation.PayloadRoot;
import org.springframework.ws.server.endpoint.annotation.RequestPayload;
import org.springframework.ws.server.endpoint.annotation.ResponsePayload;
Expand All @@ -39,7 +39,7 @@ public PaForNodeEndpoint(SynchronousPaymentService synchronousPaymentService, Re
this.paSendRTMapper = paSendRTMapper;
}

@PayloadRoot(namespace = NAMESPACE_URI, localPart = "PaDemandPaymentNoticeRequest")
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "paDemandPaymentNoticeRequest")
@ResponsePayload
public PaDemandPaymentNoticeResponse paDemandPaymentNotice(@RequestPayload PaDemandPaymentNoticeRequest request){
log.info("processing paDemandPaymentNotice idPA[{}] servizio[{}/{}]", request.getIdPA(), request.getIdSoggettoServizio(), request.getIdServizio());
Expand Down Expand Up @@ -68,14 +68,14 @@ public PaVerifyPaymentNoticeRes paVerifyPaymentNotice(@RequestPayload PaVerifyPa
}
}

@PayloadRoot(namespace = NAMESPACE_URI, localPart = "PaGetPaymentReq")
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "paGetPaymentReq")
@ResponsePayload
public PaGetPaymentRes paGetPayment(@RequestPayload PaGetPaymentReq request) {
log.info("processing UNSUPPORTED V1 paGetPayment idPA[{}] notice[{}/{}]", request.getIdPA(), request.getQrCode().getFiscalCode(), request.getQrCode().getNoticeNumber());
return handleFault(PagoPaNodeFaults.PAA_SYSTEM_ERROR, request.getIdBrokerPA(), new PaGetPaymentRes());
}

@PayloadRoot(namespace = NAMESPACE_URI, localPart = "PaGetPaymentV2Request")
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "paGetPaymentV2Request")
@ResponsePayload
public PaGetPaymentV2Response paGetPaymentV2(@RequestPayload PaGetPaymentV2Request request) {
long startTime = System.currentTimeMillis();
Expand All @@ -97,14 +97,14 @@ public PaGetPaymentV2Response paGetPaymentV2(@RequestPayload PaGetPaymentV2Reque
}
}

@PayloadRoot(namespace = NAMESPACE_URI, localPart = "PaGetPaymentReq")
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "paSendRTReq")
@ResponsePayload
public PaSendRTRes paSendRT(@RequestPayload PaSendRTReq request) {
log.info("processing UNSUPPORTED V1 paSendRT idPA[{}] notice[{}/{}]", request.getIdPA(), request.getReceipt().getFiscalCode(), request.getReceipt().getNoticeNumber());
return handleFault(PagoPaNodeFaults.PAA_SYSTEM_ERROR, request.getIdBrokerPA(), new PaSendRTRes());
}

@PayloadRoot(namespace = NAMESPACE_URI, localPart = "PaSendRTV2Request")
@PayloadRoot(namespace = NAMESPACE_URI, localPart = "paSendRTV2Request")
@ResponsePayload
public PaSendRTV2Response paSendRTV2(@RequestPayload PaSendRTV2Request request) {
long startTime = System.currentTimeMillis();
Expand Down
152 changes: 0 additions & 152 deletions src/main/resources/soap/paForNode.wsdl

This file was deleted.

Loading

0 comments on commit 2bb4035

Please sign in to comment.