diff --git a/dbcmnpsrc/FE/mnpapp/properties/delta_MNP_RU_638_resources.properties b/dbcmnpsrc/FE/mnpapp/properties/delta_MNP_RU_638_resources.properties
index aecabfd..f495967 100644
--- a/dbcmnpsrc/FE/mnpapp/properties/delta_MNP_RU_638_resources.properties
+++ b/dbcmnpsrc/FE/mnpapp/properties/delta_MNP_RU_638_resources.properties
@@ -20,5 +20,4 @@ URL_WS_O2C_TERZEPARTI_DONOR={URL O2C WS IBK63}
# SWITCH TIPO COMUNICAZIONE DA GISP AD O2C (VALORI: 0 = COMUNICAZIONE INFOBUS, 1 = COMUNICAZIONE SOAP O2C)
SOAP_O2C_RICH_DISATMNPG_CO_ENABLED=0
-TIMEOUT_WS_O2C_DISATMNPG_CO_DONOR=30000
-URL_WS_O2C_DISATMNPG_CO_DONOR={URL O2C WS IBK50}
+
diff --git a/dbcmnpsrc/FE/mnpdev/build/build.xml b/dbcmnpsrc/FE/mnpdev/build/build.xml
index dbe851f..4cdd06d 100644
--- a/dbcmnpsrc/FE/mnpdev/build/build.xml
+++ b/dbcmnpsrc/FE/mnpdev/build/build.xml
@@ -305,6 +305,8 @@
+
+
diff --git a/dbcmnpsrc/FE/mnpdev/build/build_WS_IBK63.cmd b/dbcmnpsrc/FE/mnpdev/build/build_WS_IBK63.cmd
new file mode 100644
index 0000000..e9ecaa8
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/build/build_WS_IBK63.cmd
@@ -0,0 +1,8 @@
+@set ANT_HOME=apache-ant-1.9.2
+@set JAVA_HOME=C:\jdk1.6.0_45
+@set PATH=%ANT_HOME%/bin;%JAVA_HOME%/bin
+@set ANT_OPTS=-Xms512m -Xmx512m
+
+@call ant -buildfile build_ws.xml WSO2CIBK63ClientGen
+
+@pause
\ No newline at end of file
diff --git a/dbcmnpsrc/FE/mnpdev/build/build_WS_IBK65.cmd b/dbcmnpsrc/FE/mnpdev/build/build_WS_IBK65.cmd
new file mode 100644
index 0000000..2bec542
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/build/build_WS_IBK65.cmd
@@ -0,0 +1,8 @@
+@set ANT_HOME=apache-ant-1.9.2
+@set JAVA_HOME=C:\jdk1.6.0_45
+@set PATH=%ANT_HOME%/bin;%JAVA_HOME%/bin
+@set ANT_OPTS=-Xms512m -Xmx512m
+
+@call ant -buildfile build_ws.xml WSO2CIBK65ClientGen
+
+@pause
\ No newline at end of file
diff --git a/dbcmnpsrc/FE/mnpdev/build/build_ws.xml b/dbcmnpsrc/FE/mnpdev/build/build_ws.xml
index c639894..1c50412 100644
--- a/dbcmnpsrc/FE/mnpdev/build/build_ws.xml
+++ b/dbcmnpsrc/FE/mnpdev/build/build_ws.xml
@@ -706,5 +706,59 @@ dest="${wsdev.dbss.building.path}/temp" /> -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/ear/APP-INF/lib/WSO2CIBK63Client.jar b/dbcmnpsrc/FE/mnpdev/mnp/ear/APP-INF/lib/WSO2CIBK63Client.jar
new file mode 100644
index 0000000..f46ab2e
Binary files /dev/null and b/dbcmnpsrc/FE/mnpdev/mnp/ear/APP-INF/lib/WSO2CIBK63Client.jar differ
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/ear/APP-INF/lib/WSO2CIBK65Client.jar b/dbcmnpsrc/FE/mnpdev/mnp/ear/APP-INF/lib/WSO2CIBK65Client.jar
new file mode 100644
index 0000000..abea104
Binary files /dev/null and b/dbcmnpsrc/FE/mnpdev/mnp/ear/APP-INF/lib/WSO2CIBK65Client.jar differ
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK63/IBK63Client.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK63/IBK63Client.java
new file mode 100644
index 0000000..44a9a92
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK63/IBK63Client.java
@@ -0,0 +1,206 @@
+package mnp.proxy.ws.o2c.client.IBK63;
+
+
+import com.tibco.tns.bw.json.x1718966450929.Header;
+import com.tibco.tns.bw.json.x1718966450929.IBK63_RequestElementType;
+import com.tibco.tns.bw.json.x1718966450929.Message;
+import com.tibco.tns.bw.json.x1718966450929.RequestParameters;
+import it.valueteam.mnp.ws.o2c.client.IBK63_PortType;
+import it.valueteam.mnp.ws.o2c.client.IBK63_Service_Impl;
+import mnp.database.hb.dto.MnpGispCessResttpOut;
+import mnp.log.Loggable;
+import mnp.log.ProcessLogger;
+import mnp.objects.LogInfo;
+import mnp.objects.LogProcess;
+import mnp.utility.Resources;
+
+import org.example.ibk63_responseresource.IBK63_ResponseElementType;
+import tim.infobus.data.TID;
+
+import javax.ejb.CreateException;
+import javax.xml.rpc.Stub;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+
+public class IBK63Client implements Loggable {
+ private String url;
+ private int timeOut;
+ private static final int defaultTimeOut = 30000;
+ private static final String dateFormat = "yyyy-MM-dd";
+ private static final String timeFormat = "HH:mm:ss";
+
+ protected ProcessLogger log;
+
+ protected String codiceProcesso = "MS"; // come da MNP_ANAGRAFICA_PROCESSO
+ private static final String SYSTEM_DBC = "DBC";
+
+ public static final String DATA_ESPL_FORMAT = "dd-MMM-yyyy HH:mm:ss";
+
+ protected String versione = "1.0.0.0";
+
+ public IBK63Client() throws Exception{
+ try {
+ LogProcess logProcess = new LogProcess();
+ logProcess.setCodice(codiceProcesso);
+ logProcess.setProcess(this);
+ log = new ProcessLogger(logProcess);
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ System.out.println("Errore nella creazione del ProcessLogger, classe:" + IBK63Client.class + " - " + ex.toString());
+ throw new CreateException();
+ }
+ log.write("0001", " versione " + versione);
+
+ //setto l'url che verrā utilizzato nelle richieste di Cessazione Terze Parti
+ url = Resources.getURL_WS_O2C_TERZEPARTI_DONOR();
+
+ if ("".equals(url)) {
+ log.write("0003", "");
+ throw new Exception("errore in creazione client IBK63Client - impossibile recuperare url del ws da properties");
+ }
+
+ String timeOutStr = Resources.getTIMEOUT_WS_O2C_TERZEPARTI_DONOR();
+ log.write("9999", " IBK63Client - url: " + url + " - timeOut: " + timeOutStr);
+
+ //se non esiste la properties timer, allora la setto con la var. statica della classe
+ try {
+ timeOut = Integer.parseInt(timeOutStr);
+ } catch (NumberFormatException nfe) {
+ log.write("9999", " impossibile recuperare property timeout - impostato valore di default: " + defaultTimeOut);
+ timeOut = defaultTimeOut;
+ }
+ }
+
+ @Override
+ public LogInfo getLogInfo() throws Exception {
+ LogInfo logInfo = new LogInfo();
+ logInfo.setProcess(getClass().getName());
+ logInfo.setLogPath(Resources.getLogPath());
+ logInfo.setTypeInfo(Resources.getTypeInfo());
+ logInfo.setTypeDebug(Resources.getTypeDebug());
+ logInfo.setTypeError(Resources.getTypeError());
+ return logInfo;
+ }
+
+ /**
+ * Creazione Request servizio gestioneTerzeParti esposto da O2C
+ * per richieste di cessazione (Cessazione Terze Parti)
+ *
+ * @param mnpGispCessResttpOut oggetto legato al dao che referenzia la tabella MNP_GISP_CESS_RESTTP_OUT
+ * @return oggetto di tipo IBK63_RequestElementType
+ */
+ public IBK63_RequestElementType createRequest(MnpGispCessResttpOut mnpGispCessResttpOut) {
+ IBK63_RequestElementType richiestaCessTP = new IBK63_RequestElementType();
+ Message message = new Message();
+ List parameters = new ArrayList();
+
+ RequestParameters nomeRichiesta = new RequestParameters();
+ if (mnpGispCessResttpOut.getNomeRichiesta() != null) {
+ nomeRichiesta.setName("NOME_RICHIESTA");
+ nomeRichiesta.setValue(mnpGispCessResttpOut.getNomeRichiesta());
+ parameters.add(nomeRichiesta);
+ }
+
+ RequestParameters cas = new RequestParameters();
+ if (mnpGispCessResttpOut.getCas() != null) {
+ cas.setName("CAS");
+ cas.setValue(mnpGispCessResttpOut.getCas());
+ parameters.add(cas);
+ }
+
+ RequestParameters numTel = new RequestParameters();
+ if (mnpGispCessResttpOut.getNumTel() != null) {
+ numTel.setName("NUM_TEL");
+ numTel.setValue(mnpGispCessResttpOut.getNumTel());
+ parameters.add(numTel);
+ }
+
+ //č una stirnga non una DATE
+ RequestParameters dataEspl = new RequestParameters();
+ if (mnpGispCessResttpOut.getDataEspl() != null) {
+ dataEspl.setName("DATA_ESPL");
+ dataEspl.setValue(mnpGispCessResttpOut.getDataEspl());
+ parameters.add(dataEspl);
+ }
+
+
+ RequestParameters rgnd = new RequestParameters();
+ if (mnpGispCessResttpOut.getRgnd() != null) {
+ rgnd.setName("RGND");
+ rgnd.setValue(mnpGispCessResttpOut.getRgnd());
+ parameters.add(rgnd);
+ }
+
+ RequestParameters rgnr = new RequestParameters();
+ if (mnpGispCessResttpOut.getRgnr() != null) {
+ rgnr.setName("RGNR");
+ rgnr.setValue(mnpGispCessResttpOut.getRgnr());
+ parameters.add(rgnr);
+ }
+
+ RequestParameters tid = new RequestParameters();
+ if (mnpGispCessResttpOut.getTid() != null) {
+ tid.setName("TID");
+ tid.setValue(mnpGispCessResttpOut.getTid());
+ parameters.add(tid);
+ }
+
+
+ //trasformo la lista in array
+ RequestParameters[] array_param = new RequestParameters[parameters.size()];
+ int p = 0;
+
+ for (RequestParameters param : parameters) {
+ array_param[p] = param;
+ p++;
+ }
+
+ message.setRequestParameters(array_param);
+ richiestaCessTP.setMessage(message);
+
+ return richiestaCessTP;
+ }
+
+ /** Metodo utilizzato per invocare l'endPoint di IBK63 sul
+ * servizio gestioneTerzeParti per attivazioni
+ *
+ * @param body
+ * @param eventType
+ * @return
+ * @throws Exception
+ */
+ public IBK63_ResponseElementType iBK63GestioneTerzeParti(IBK63_RequestElementType body, String eventType) throws Exception {
+
+ IBK63_Service_Impl service = new IBK63_Service_Impl();
+ IBK63_PortType endPoint;
+ endPoint = service.getIBK63SOAP();
+ ((Stub) endPoint)._setProperty("javax.xml.rpc.service.endpoint.address", url);
+ ((Stub) endPoint)._setProperty("weblogic.wsee.transport.connection.timeout", timeOut);
+
+ Header header = new Header();
+
+ Date date = new Date();
+ header.setInteractionDateDate(new SimpleDateFormat(dateFormat).format(date));
+ header.setInteractionDateTime(new SimpleDateFormat(timeFormat).format(date));
+
+ header.setSourceSystem(SYSTEM_DBC);
+ header.setChannel(SYSTEM_DBC);
+ header.setEventType(eventType);
+
+ header.setBusinessID(new TID().toString());
+ header.setTransactionID(new TID().toString());
+ header.setMessageID(new TID().toString());
+ //in uniformitā alla IBK50 non mettiamo SessionID
+
+ body.setHeader(header);
+
+ IBK63_ResponseElementType response = endPoint.gestioneTerzeParti(body);
+
+ return response;
+ }
+
+
+}
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK63/IBK63SOAPHandler.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK63/IBK63SOAPHandler.java
new file mode 100644
index 0000000..79bd0d4
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK63/IBK63SOAPHandler.java
@@ -0,0 +1,52 @@
+package mnp.proxy.ws.o2c.client.IBK63;
+
+import javax.xml.namespace.QName;
+import javax.xml.rpc.handler.GenericHandler;
+import javax.xml.rpc.handler.MessageContext;
+import javax.xml.rpc.handler.soap.SOAPMessageContext;
+import java.io.ByteArrayOutputStream;
+
+public class IBK63SOAPHandler extends GenericHandler {
+
+
+ private QName[] headers;
+
+ public QName[] getHeaders() {
+ return headers;
+ }
+
+ public boolean handleRequest(MessageContext context) {
+ SOAPMessageContext soapMsgCtx = (SOAPMessageContext) context;
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+
+ try {
+ System.out.println("[IBK63SOAPHandler] - Inizio Log Invio Notifica");
+ System.out.println("----------------------------------------------------------------------------------------------");
+ soapMsgCtx.getMessage().writeTo(baos);
+ System.out.println(baos.toString());
+ System.out.println("[IBK63SOAPHandler] - Fine Log Invio Notifica");
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ return false;
+ }
+ return true;
+ }
+
+ public boolean handleFault(MessageContext context) {
+ SOAPMessageContext soapMsgCtx = (SOAPMessageContext) context;
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+
+ try {
+ System.out.println("[IBK63SOAPHandler] - Inizio Log Errore Invio Notifica");
+ System.out.println("----------------------------------------------------------------------------------------------");
+ soapMsgCtx.getMessage().writeTo(baos);
+ System.out.println(baos.toString());
+ System.out.println("[IBK63SOAPHandler] - Fine Log Errore Invio Notifica");
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ return false;
+ }
+ return true;
+ }
+
+}
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK65/IBK65Client.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK65/IBK65Client.java
new file mode 100644
index 0000000..4ebc8bb
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK65/IBK65Client.java
@@ -0,0 +1,187 @@
+package mnp.proxy.ws.o2c.client.IBK65;
+
+import com.tibco.tns.bw.json.x1718966450929.Header;
+import com.tibco.tns.bw.json.x1718966450929.IBK65_RequestElementType;
+import com.tibco.tns.bw.json.x1718966450929.RequestParameters;
+import com.tibco.tns.bw.json.x1718966450929.Message;
+import it.valueteam.mnp.ws.o2c.client.IBK65_PortType;
+import it.valueteam.mnp.ws.o2c.client.IBK65_Service_Impl;
+import mnp.database.hb.dto.MnpGispCessRestituzioneOut;
+import mnp.log.Loggable;
+import mnp.log.ProcessLogger;
+import mnp.objects.LogInfo;
+import mnp.objects.LogProcess;
+import mnp.utility.Resources;
+import org.example.ibk65_responseresource.IBK65_ResponseElementType;
+import tim.infobus.data.TID;
+import javax.ejb.CreateException;
+import javax.xml.rpc.Stub;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+
+public class IBK65Client implements Loggable {
+ private String url;
+ private int timeOut;
+ private static final int defaultTimeOut = 30000;
+ private static final String dateFormat = "yyyy-MM-dd";
+ private static final String timeFormat = "HH:mm:ss";
+
+ protected ProcessLogger log;
+
+ protected String codiceProcesso = "MS"; // come da MNP_ANAGRAFICA_PROCESSO
+ private static final String SYSTEM_DBC = "DBC";
+
+ public static final String DATA_ESPL_FORMAT = "dd-MMM-yyyy HH:mm:ss";
+
+ protected String versione = "1.0.0.0";
+
+ public IBK65Client() throws Exception{
+ try {
+ LogProcess logProcess = new LogProcess();
+ logProcess.setCodice(codiceProcesso);
+ logProcess.setProcess(this);
+ log = new ProcessLogger(logProcess);
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ System.out.println("Errore nella creazione del ProcessLogger, classe:" + IBK65Client.class + " - " + ex.toString());
+ throw new CreateException();
+ }
+ log.write("0001", " versione " + versione);
+
+ //setto l'url che verrā utilizzato nelle richieste di Restituzione
+ url = Resources.getURL_WS_O2C_RESTITUZIONE_DONOR();
+
+ if ("".equals(url)) {
+ log.write("0003", "");
+ throw new Exception("errore in creazione client IBK65Client - impossibile recuperare url del ws da properties");
+ }
+
+ String timeOutStr = Resources.getTIMEOUT_WS_O2C_RESTITUZIONE_DONOR();
+ log.write("9999", " IBK65Client - url: " + url + " - timeOut: " + timeOutStr);
+
+ //se non esiste la properties timer, allora la setto con la var. statica della classe
+ try {
+ timeOut = Integer.parseInt(timeOutStr);
+ } catch (NumberFormatException nfe) {
+ log.write("9999", " impossibile recuperare property timeout - impostato valore di default: " + defaultTimeOut);
+ timeOut = defaultTimeOut;
+ }
+ }
+
+ @Override
+ public LogInfo getLogInfo() throws Exception {
+ LogInfo logInfo = new LogInfo();
+ logInfo.setProcess(getClass().getName());
+ logInfo.setLogPath(Resources.getLogPath());
+ logInfo.setTypeInfo(Resources.getTypeInfo());
+ logInfo.setTypeDebug(Resources.getTypeDebug());
+ logInfo.setTypeError(Resources.getTypeError());
+ return logInfo;
+ }
+
+ /**
+ * Creazione Request servizio richiestaRestituzioneNUM esposto da O2C
+ * per richieste di Restituzione
+ *
+ * @param mnpGispCessRestituzioneOut oggetto legato al dao che referenzia la tabella MNP_GISP_CESS_RESTITUZIONE_OUT
+ * @return oggetto di tipo IBK65_RequestElementType
+ */
+ public IBK65_RequestElementType createRequest(MnpGispCessRestituzioneOut mnpGispCessRestituzioneOut) {
+ IBK65_RequestElementType richiestaRestituzione = new IBK65_RequestElementType();
+ Message message = new Message();
+ List parameters = new ArrayList();
+
+ RequestParameters nomeRichiesta = new RequestParameters();
+ if (mnpGispCessRestituzioneOut.getNomeRichiesta() != null) {
+ nomeRichiesta.setName("NOME_RICHIESTA");
+ nomeRichiesta.setValue(mnpGispCessRestituzioneOut.getNomeRichiesta());
+ parameters.add(nomeRichiesta);
+ }
+
+ RequestParameters cas = new RequestParameters();
+ if (mnpGispCessRestituzioneOut.getCas() != null) {
+ cas.setName("CAS");
+ cas.setValue(mnpGispCessRestituzioneOut.getCas());
+ parameters.add(cas);
+ }
+
+ RequestParameters numTel = new RequestParameters();
+ if (mnpGispCessRestituzioneOut.getNumTel() != null) {
+ numTel.setName("NUM_TEL");
+ numTel.setValue(mnpGispCessRestituzioneOut.getNumTel());
+ parameters.add(numTel);
+ }
+
+ //č una stringa non una DATE
+ RequestParameters dataEspl = new RequestParameters();
+ if (mnpGispCessRestituzioneOut.getDataEspl() != null) {
+ dataEspl.setName("DATA_ESPL");
+ dataEspl.setValue(mnpGispCessRestituzioneOut.getDataEspl());
+ parameters.add(dataEspl);
+ }
+
+ RequestParameters tid = new RequestParameters();
+ if (mnpGispCessRestituzioneOut.getTid() != null) {
+ tid.setName("TID");
+ tid.setValue(mnpGispCessRestituzioneOut.getTid());
+ parameters.add(tid);
+ }
+
+ //trasformo la lista in array
+ RequestParameters[] array_param = new RequestParameters[parameters.size()];
+ int p = 0;
+
+ for (RequestParameters param : parameters) {
+ array_param[p] = param;
+ p++;
+ }
+
+ message.setRequestParameters(array_param);
+ richiestaRestituzione.setMessage(message);
+
+ return richiestaRestituzione;
+ }
+
+ /** Metodo utilizzato per invocare l'endPoint di IBK65 sul
+ * servizio richiestaRestituzioneNUM per attivazioni
+ *
+ * @param body
+ * @param eventType
+ * @return
+ * @throws Exception
+ */
+ public IBK65_ResponseElementType iBK65richiestaRestituzioneNUM(IBK65_RequestElementType body, String eventType) throws Exception {
+
+ IBK65_Service_Impl service = new IBK65_Service_Impl();
+ IBK65_PortType endPoint;
+ endPoint = service.getIBK65SOAP();
+ ((Stub) endPoint)._setProperty("javax.xml.rpc.service.endpoint.address", url);
+ ((Stub) endPoint)._setProperty("weblogic.wsee.transport.connection.timeout", timeOut);
+
+ Header header = new Header();
+
+ Date date = new Date();
+ header.setInteractionDateDate(new SimpleDateFormat(dateFormat).format(date));
+ header.setInteractionDateTime(new SimpleDateFormat(timeFormat).format(date));
+
+ header.setSourceSystem(SYSTEM_DBC);
+ header.setChannel(SYSTEM_DBC);
+ header.setEventType(eventType);
+
+ header.setBusinessID(new TID().toString());
+ header.setTransactionID(new TID().toString());
+ header.setMessageID(new TID().toString());
+ //in uniformitā alla IBK50 non mettiamo SessionID
+
+ body.setHeader(header);
+
+ IBK65_ResponseElementType response = endPoint.richiestaRestituzioneNUM(body);
+
+ return response;
+ }
+
+
+}
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK65/IBK65SOAPHandler.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK65/IBK65SOAPHandler.java
new file mode 100644
index 0000000..2cd1d04
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/proxy/ws/o2c/client/IBK65/IBK65SOAPHandler.java
@@ -0,0 +1,52 @@
+package mnp.proxy.ws.o2c.client.IBK65;
+
+import javax.xml.namespace.QName;
+import javax.xml.rpc.handler.GenericHandler;
+import javax.xml.rpc.handler.MessageContext;
+import javax.xml.rpc.handler.soap.SOAPMessageContext;
+import java.io.ByteArrayOutputStream;
+
+public class IBK65SOAPHandler extends GenericHandler {
+
+
+ private QName[] headers;
+
+ public QName[] getHeaders() {
+ return headers;
+ }
+
+ public boolean handleRequest(MessageContext context) {
+ SOAPMessageContext soapMsgCtx = (SOAPMessageContext) context;
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+
+ try {
+ System.out.println("[IBK65SOAPHandler] - Inizio Log Invio Notifica");
+ System.out.println("----------------------------------------------------------------------------------------------");
+ soapMsgCtx.getMessage().writeTo(baos);
+ System.out.println(baos.toString());
+ System.out.println("[IBK65SOAPHandler] - Fine Log Invio Notifica");
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ return false;
+ }
+ return true;
+ }
+
+ public boolean handleFault(MessageContext context) {
+ SOAPMessageContext soapMsgCtx = (SOAPMessageContext) context;
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+
+ try {
+ System.out.println("[IBK65SOAPHandler] - Inizio Log Errore Invio Notifica");
+ System.out.println("----------------------------------------------------------------------------------------------");
+ soapMsgCtx.getMessage().writeTo(baos);
+ System.out.println(baos.toString());
+ System.out.println("[IBK65SOAPHandler] - Fine Log Errore Invio Notifica");
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ return false;
+ }
+ return true;
+ }
+
+}
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestAttOutEventHandler.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestAttOutEventHandler.java
index ee76f39..63f5262 100644
--- a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestAttOutEventHandler.java
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestAttOutEventHandler.java
@@ -295,7 +295,14 @@ public class GispRequestAttOutEventHandler extends AbstractEventHandler {
mnpGispRicAttOut.setDataInvio(new Date());
dao.merge(mnpGispRicAttOut);
dao.flush();
- sendToIB(mnpGispRicAttOut);
+
+ if(!Resources.SOAP_O2C_RICH_ATTIVGSM_ENABLED()) {
+ sendToIB(mnpGispRicAttOut);
+ }
+ else {
+ sendToO2C(mnpGispRicAttOut);
+ }
+
String processType = BoFactory.getMacroProcessType(mnpGispRicAttOut.getTid());
}
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutDonAbbEventHandler.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutDonAbbEventHandler.java
index 1840800..f4dfa78 100644
--- a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutDonAbbEventHandler.java
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutDonAbbEventHandler.java
@@ -107,8 +107,9 @@ public class GispRequestCessOutDonAbbEventHandler extends AbstractEventHandler {
boolean isCo = GispMap.GISP_CESS_TIPO_RICHIESTA_COABB.equals(mnpGispCessOutDonAbb.getNomeRichiesta());
boolean requestSent = false;
- /** SOAP_GISP_RICH_CESS_ENABLED utilizzata per abilitare la chiamata al servizio DBC_DISATMNPG_BU
- * la var SOAP_O2C_RICH_DISATMNPG_CO_ENABLED abilita la chiamata al servizio DBC_DISATMNPG_CO
+ /** SOAP_GISP_RICH_CESS_ENABLED utilizzata per abilitare la chiamata al servizio di
+ * CO e di BU
+ * la var SOAP_O2C_RICH_DISATMNPG_CO_ENABLED abilita la chiamata UNICAMENTE al servizio DBC_DISATMNPG_CO
* **/
if(!Resources.SOAP_GISP_RICH_CESS_ENABLED() || (isCo && !Resources.SOAP_O2C_RICH_DISATMNPG_CO_ENABLED())) {
if(sendToIB(mnpGispCessOutDonAbb)) {
@@ -119,7 +120,6 @@ public class GispRequestCessOutDonAbbEventHandler extends AbstractEventHandler {
requestSent = true;
}
}
-
if (requestSent) {
dao.merge(mnpGispCessOutDonAbb);
@@ -226,7 +226,7 @@ public class GispRequestCessOutDonAbbEventHandler extends AbstractEventHandler {
mnpGispCessOutDonAbb.setDataInvio(new Date());
dao.merge(mnpGispCessOutDonAbb);
dao.flush();
- if(!Resources.SOAP_GISP_RICH_CESS_ENABLED() || isCo) {
+ if(!Resources.SOAP_GISP_RICH_CESS_ENABLED() || (isCo && !Resources.SOAP_O2C_RICH_DISATMNPG_CO_ENABLED())) {
sendToIB(mnpGispCessOutDonAbb);
} else {
sendToO2C(mnpGispCessOutDonAbb);
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutEventHandler.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutEventHandler.java
index 2cdafce..9304b34 100644
--- a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutEventHandler.java
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRequestCessOutEventHandler.java
@@ -298,7 +298,10 @@ public class GispRequestCessOutEventHandler extends AbstractEventHandler {
mnpGispCessOut.setDataInvio(new Date());
dao.merge(mnpGispCessOut);
dao.flush();
- sendToIB(mnpGispCessOut);
+ if(!Resources.SOAP_O2C_RICH_DISATMNPG_ENABLED())
+ sendToIB(mnpGispCessOut);
+ else
+ sendToO2C(mnpGispCessOut);
}
else {
throw new Exception("Notifica avente UNIQUEID: " + uniqueId +
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRestOutEventHandler.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRestOutEventHandler.java
index 7014416..80722d9 100644
--- a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRestOutEventHandler.java
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispRestOutEventHandler.java
@@ -6,6 +6,7 @@ import java.util.*;
import com.tibco.tns.bw.json.x1698392386014.RequestType;
import com.tibco.tns.bw.json.x1698420077301.IBK50ResponseElementType;
+import com.tibco.tns.bw.json.x1718966450929.IBK65_RequestElementType;
import mnp.bo.RequestIF;
import mnp.database.*;
import mnp.database.dao.RichiestaCessazioneDAO;
@@ -21,9 +22,11 @@ import mnp.objects.dao.RichiestaCessazione;
import mnp.objects.dao.RichiestaPorting;
import mnp.proxy.ToWTC.*;
import mnp.proxy.ws.gisp.client.GISPClient;
+import mnp.proxy.ws.o2c.client.IBK65.IBK65Client;
import mnp.systemcontroller.eventhandler.*;
import mnp.systemcontroller.gisp.formatcontroller.GispRestOutFormatController;
import mnp.utility.Resources;
+import org.example.ibk65_responseresource.IBK65_ResponseElementType;
/**
@@ -100,18 +103,14 @@ public class GispRestOutEventHandler extends AbstractEventHandler {
mnpGispCessRestituzioneOut.setDataUltimoInvio(new Date());
dao.merge(mnpGispCessRestituzioneOut);
dao.flush();
- /** switch in base alla properties ed invia a o2c
- * if(!Resources.SOAP_GISP_RICH_RESTITUZIONE_ENABLED()) {
- * if(sendToIB(mnpGispCessRestituzioneOut)) {
- * requestSent = true;
- * }
- * } else {
- * if(sendToO2C(mnpGispCessRestituzioneOut)) {
- * requestSent = true;
- * }
- * }
- * **/
- sendToIB(mnpGispCessRestituzioneOut);
+
+ if(!Resources.SOAP_O2C_RICH_RESTITUZIONE_ENABLED()){
+ sendToIB(mnpGispCessRestituzioneOut);
+ }
+ else {
+ sendToO2C(mnpGispCessRestituzioneOut);
+ }
+
break;
default:
throw new UnsupportedOperationException("PARAMETRO DA_SCODARE SCONOSCIUTO!");
@@ -207,7 +206,12 @@ public class GispRestOutEventHandler extends AbstractEventHandler {
mnpGispCessRestituzioneOut.setDataUltimoInvio(new Date());
dao.merge(mnpGispCessRestituzioneOut);
dao.flush();
- sendToIB(mnpGispCessRestituzioneOut);
+ if(!Resources.SOAP_O2C_RICH_RESTITUZIONE_ENABLED()){
+ sendToIB(mnpGispCessRestituzioneOut);
+ }
+ else {
+ sendToO2C(mnpGispCessRestituzioneOut);
+ }
} else {
throw new Exception("Notifica avente UNIQUEID: " + uniqueId +
"non presente nella tabella MNP_GISP_CESS_RESTITUZIONE_OUT");
@@ -247,7 +251,7 @@ public class GispRestOutEventHandler extends AbstractEventHandler {
/**
* invia la notifica
*
- * @param mnpGispCessResttpOut MnpGispCessResttpOut
+ * @param mnpGispCessRestituzioneOut
*/
private void sendToIB(MnpGispCessRestituzioneOut mnpGispCessRestituzioneOut) throws
IBSendException, InfobusHandlerException, Exception {
@@ -347,24 +351,28 @@ public class GispRestOutEventHandler extends AbstractEventHandler {
inserisciNotificaInCoda(this.creaNotificationMessage(ris,idRichiesta));
}
-/**
- public boolean sendToO2C(mnpGispCessRestituzioneOut mnpGispCessRestituzioneOut) throws Exception {
+ /**
+ * Metodo utilizzato per inviare la richiesta di Restituzione ad O2C utilizzando il Client IBK65.
+ * NOTA: eventType = "lineeMobili_restituzioneNumero"
+ *
+ * @param mnpGispCessRestituzioneOut
+ * @throws Exception
+ */
+ public void sendToO2C(MnpGispCessRestituzioneOut mnpGispCessRestituzioneOut) throws Exception {
- GISPClient client = new GISPClient();
- RequestType requesto2c = client.createRequest(mnpGispCessRestituzioneOut);
- IBK65ResponseElementType response;
- boolean esito = false;
+ IBK65Client client = new IBK65Client();
+ IBK65_RequestElementType requesto2c = client.createRequest(mnpGispCessRestituzioneOut);
+
+ IBK65_ResponseElementType response;
try {
- response = client.iBK65RichiestaRestituzioneLineaDonor(requesto2c, "lineeMobili_restituzioneNumero");
+ response = client.iBK65richiestaRestituzioneNUM(requesto2c, "lineeMobili_restituzioneNumero");
log.write("9999", "Response ricevuta OK: " + (response != null && response.getResponse() != null ?
response.getResponse().getReturnCode() : ""));
- esito = true;
} catch(Exception e) {
- log.write("9999", "Eccezione ricevuta su ibk50RichiestaCessazioneLineaDonor" + e.getMessage());
+ log.write("9999", "Eccezione ricevuta su iBK65richiestaRestituzioneNUM" + e.getMessage());
throw e;
}
- return esito;
}
- */
+
}
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispTpOutEventHandler.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispTpOutEventHandler.java
index c99e61e..a559692 100644
--- a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispTpOutEventHandler.java
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/systemcontroller/gisp/handler/GispTpOutEventHandler.java
@@ -6,11 +6,14 @@ import java.util.*;
import javax.transaction.UserTransaction;
+import com.tibco.tns.bw.json.x1718779962104.IBK61_RequestElementType;
+import com.tibco.tns.bw.json.x1718966450929.IBK63_RequestElementType;
import mnp.bo.RequestIF;
import mnp.database.*;
import mnp.database.dao.OloDAO;
import mnp.database.dao.RichiestaPortingDAO;
import mnp.database.hb.dao.*;
+import mnp.database.hb.dto.MnpGispAttOut;
import mnp.database.hb.dto.MnpGispCessResttpOut;
import mnp.exception.infobus.*;
import mnp.jms.MessageHandler;
@@ -20,10 +23,14 @@ import mnp.objects.*;
import mnp.objects.dao.Richiesta;
import mnp.objects.dao.RichiestaPorting;
import mnp.proxy.ToWTC.*;
+import mnp.proxy.ws.o2c.client.IBK61Client;
+import mnp.proxy.ws.o2c.client.IBK63.IBK63Client;
import mnp.systemcontroller.eventhandler.*;
import mnp.systemcontroller.gisp.formatcontroller.GispTpOutFormatController;
import mnp.utility.Resources;
import mnp.utility.date.GISPTimeUtil;
+import org.example.ibk61_responseresource.IBK61_ResponseElementType;
+import org.example.ibk63_responseresource.IBK63_ResponseElementType;
/**
@@ -103,19 +110,13 @@ public class GispTpOutEventHandler extends AbstractEventHandler {
dao.merge(mnpGispCessResttpOut);
dao.flush();
- /** switch in base alla properties ed invia a o2c
- * if(!Resources.SOAP_GISP_RICH_TERZEPARTI_ENABLED()) {
- * if(sendToIB(mnpGispCessResttpOut)) {
- * requestSent = true;
- * }
- * } else {
- * if(sendToO2C(mnpGispCessResttpOut)) {
- * requestSent = true;
- * }
- * }
- * **/
+ if(!Resources.SOAP_O2C_RICH_TERZEPARTI_ENABLED()){
+ sendToIB(mnpGispCessResttpOut);
+ }
+ else {
+ sendToO2C(mnpGispCessResttpOut);
+ }
- sendToIB(mnpGispCessResttpOut);
if(mnpGispCessResttpOut.getNumInvii().intValue()==1) RequestManagerPorting.avanzaStato(mnpGispCessResttpOut.getTid(), String.valueOf(TipoFlusso.GISP_TERZEPARTI_IN),
StatoRichiestaPorting.ACQUISITA, StatoRichiestaPorting.ATTESAEVASIONE, "", -1);
@@ -214,7 +215,12 @@ public class GispTpOutEventHandler extends AbstractEventHandler {
mnpGispCessResttpOut.setDataUltimoInvio(new Date());
dao.merge(mnpGispCessResttpOut);
dao.flush();
- sendToIB(mnpGispCessResttpOut);
+ if(!Resources.SOAP_O2C_RICH_TERZEPARTI_ENABLED()){
+ sendToIB(mnpGispCessResttpOut);
+ }
+ else {
+ sendToO2C(mnpGispCessResttpOut);
+ }
} else {
throw new Exception("Notifica avente UNIQUEID: " + uniqueId +
"non presente nella tabella MNP_GISP_CESS_RESTTP_OUT");
@@ -381,23 +387,28 @@ public class GispTpOutEventHandler extends AbstractEventHandler {
}
/**
- public boolean sendToO2C(mnpGispCessResttpOut mnpGispCessResttpOut) throws Exception {
-
- GISPClient client = new GISPClient();
- RequestType requesto2c = client.createRequest(mnpGispCessResttpOut);
- IBK63ResponseElementType response;
- boolean esito = false;
- try {
- response = client.iBK63RichiestaTerzePartiLineaDonor(requesto2c, "lineeMobili_gestioneTerzeParti");
- log.write("9999", "Response ricevuta OK: " + (response != null && response.getResponse() != null ?
- response.getResponse().getReturnCode() : ""));
- esito = true;
- } catch(Exception e) {
- log.write("9999", "Eccezione ricevuta su ibk50RichiestaCessazioneLineaDonor" + e.getMessage());
- throw e;
- }
-
- return esito;
- }
+ * Metodo utilizzato per inviare la richiesta di cessazione Terze Parti ad O2C utilizzando il Client IBK63.
+ * NOTA: eventType = "lineeMobili_gestioneTerzeParti"
+ *
+ * @param mnpGispCessResttpOut
+ * @throws Exception
*/
+ public void sendToO2C(MnpGispCessResttpOut mnpGispCessResttpOut) throws Exception {
+
+ IBK63Client client = new IBK63Client();
+ IBK63_RequestElementType requesto2c = client.createRequest(mnpGispCessResttpOut);
+
+ IBK63_ResponseElementType response;
+
+ try {
+ response = client.iBK63GestioneTerzeParti(requesto2c, "lineeMobili_gestioneTerzeParti");
+ log.write("9999", "Response ricevuta OK: " + (response != null && response.getResponse() != null ?
+ response.getResponse().getReturnCode() : ""));
+
+ } catch(Exception e) {
+ log.write("9999", "Eccezione ricevuta su iBK63GestioneTerzeParti" + e.getMessage());
+ throw e;
+ }
+ }
+
}
diff --git a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/utility/Resources.java b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/utility/Resources.java
index af80e7a..d1abcca 100644
--- a/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/utility/Resources.java
+++ b/dbcmnpsrc/FE/mnpdev/mnp/src/mnp/utility/Resources.java
@@ -2495,7 +2495,7 @@ public class Resources {
String valoreProp = trim(props.getProperty("SOAP_O2C_RICH_DISATMNPG_CO_ENABLED"));
return ("1".equalsIgnoreCase(valoreProp));
}
- public static String getURL_WS_O2C_DISATMNPG_CO_DONOR() {
+ /*public static String getURL_WS_O2C_DISATMNPG_CO_DONOR() {
init();
return trim(props.getProperty("URL_WS_O2C_DISATMNPG_CO_DONOR"));
}
@@ -2503,4 +2503,6 @@ public class Resources {
init();
return trim(props.getProperty("TIMEOUT_WS_O2C_DISATMNPG_CO_DONOR"));
}
+
+ */
}
diff --git a/dbcmnpsrc/FE/mnpdev/wsdbc/o2c/client/IBK63/WSO2CIBK63Client.jar b/dbcmnpsrc/FE/mnpdev/wsdbc/o2c/client/IBK63/WSO2CIBK63Client.jar
new file mode 100644
index 0000000..f46ab2e
Binary files /dev/null and b/dbcmnpsrc/FE/mnpdev/wsdbc/o2c/client/IBK63/WSO2CIBK63Client.jar differ
diff --git a/dbcmnpsrc/FE/mnpdev/wsdbc/o2c/client/IBK65/WSO2CIBK65Client.jar b/dbcmnpsrc/FE/mnpdev/wsdbc/o2c/client/IBK65/WSO2CIBK65Client.jar
new file mode 100644
index 0000000..abea104
Binary files /dev/null and b/dbcmnpsrc/FE/mnpdev/wsdbc/o2c/client/IBK65/WSO2CIBK65Client.jar differ
diff --git a/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK63/IBK63_Concrete.wsdl b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK63/IBK63_Concrete.wsdl
new file mode 100644
index 0000000..6885288
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK63/IBK63_Concrete.wsdl
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK63/handlerClientIBK63.config.xml b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK63/handlerClientIBK63.config.xml
new file mode 100644
index 0000000..e4a2f44
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK63/handlerClientIBK63.config.xml
@@ -0,0 +1,10 @@
+
+
+
+ IBK63SOAPHandler
+ mnp.proxy.ws.o2c.client.IBK63SOAPHandler
+
+
\ No newline at end of file
diff --git a/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK65/IBK65_Concrete.wsdl b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK65/IBK65_Concrete.wsdl
new file mode 100644
index 0000000..03e425e
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK65/IBK65_Concrete.wsdl
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK65/handlerClientIBK65.config.xml b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK65/handlerClientIBK65.config.xml
new file mode 100644
index 0000000..24c2b40
--- /dev/null
+++ b/dbcmnpsrc/FE/mnpdev/wsdbc/wsdl/o2c/IBK65/handlerClientIBK65.config.xml
@@ -0,0 +1,10 @@
+
+
+
+ IBK65SOAPHandler
+ mnp.proxy.ws.o2c.client.IBK65SOAPHandler
+
+
\ No newline at end of file