First Commit - Source Code from Reply

This commit is contained in:
vincenzofariello
2024-05-13 12:54:14 +02:00
parent 73e32a5020
commit a15aee1f08
11184 changed files with 1065913 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry excluding="**/bower_components/*|**/node_modules/*|**/*.min.js" kind="src" path="src/main/webapp"/>
<classpathentry kind="src" path="target/m2e-wtp/web-resources"/>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
<attributes>
<attribute name="hide" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
<classpathentry kind="output" path=""/>
</classpath>

View File

@@ -0,0 +1,4 @@
eclipse.preferences.version=1
encoding//src/main/java=UTF-8
encoding//src/main/resources=UTF-8
encoding/<project>=UTF-8

View File

@@ -0,0 +1,9 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
org.eclipse.jdt.core.compiler.compliance=1.6
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.release=disabled
org.eclipse.jdt.core.compiler.source=1.6

View File

@@ -0,0 +1,4 @@
activeProfiles=
eclipse.preferences.version=1
resolveWorkspaceProjects=true
version=1

View File

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="dbcm-web">
<wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
<dependent-module archiveName="dbcm-serviceinterface-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/dbcm-serviceinterface/dbcm-serviceinterface">
<dependency-type>uses</dependency-type>
</dependent-module>
<dependent-module archiveName="dbcm-service-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/dbcm-service/dbcm-service">
<dependency-type>uses</dependency-type>
</dependent-module>
<dependent-module archiveName="dbcm-sftp-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/dbcm-sftp/dbcm-sftp">
<dependency-type>uses</dependency-type>
</dependent-module>
<dependent-module archiveName="dbcm-dao-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/dbcm-dao/dbcm-dao">
<dependency-type>uses</dependency-type>
</dependent-module>
<dependent-module archiveName="dbcm-core-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/dbcm-core/dbcm-core">
<dependency-type>uses</dependency-type>
</dependent-module>
<dependent-module archiveName="dbcm-model-1.0.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/dbcm-model/dbcm-model">
<dependency-type>uses</dependency-type>
</dependent-module>
<property name="context-root" value="dbcm-web"/>
<property name="java-output-path" value="/dbcm-web/target/classes"/>
</wb-module>
</project-modules>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<fixed facet="wst.jsdt.web"/>
<installed facet="java" version="1.6"/>
<installed facet="jst.web" version="2.5"/>
<installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>

View File

@@ -0,0 +1 @@
org.eclipse.wst.jsdt.launching.baseBrowserLibrary

View File

@@ -0,0 +1 @@
Window

View File

@@ -0,0 +1,2 @@
disabled=06target
eclipse.preferences.version=1

176
dbcm/dbcm-web/pom.xml Normal file
View File

@@ -0,0 +1,176 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>dbcm-web</artifactId>
<packaging>war</packaging>
<parent>
<groupId>dbcm</groupId>
<artifactId>dbcm</artifactId>
<version>1.0</version>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.7</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>dbcm</groupId>
<artifactId>dbcm-serviceinterface</artifactId>
<type>jar</type>
<version>1.0</version>
</dependency>
<dependency>
<groupId>dbcm</groupId>
<artifactId>dbcm-service</artifactId>
<type>jar</type>
<version>1.0</version>
</dependency>
<dependency>
<groupId>dbcm</groupId>
<artifactId>dbcm-core</artifactId>
<type>jar</type>
<version>1.0</version>
</dependency>
<dependency>
<groupId>dbcm</groupId>
<artifactId>dbcm-model</artifactId>
<type>jar</type>
<version>1.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>2.2.10</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>dbcm-web</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<configuration>
<webappDirectory>src/main/webapp</webappDirectory>
</configuration>
</plugin>
<!-- Decommentare solo per rigenerazione Web Service -->
<!--
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<compilerArguments>
<endorseddirs>${project.build.directory}/endorsed</endorseddirs>
</compilerArguments>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/endorsed</outputDirectory>
<silent>true</silent>
<artifactItems>
<artifactItem>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2.7</version>
<type>jar</type>
</artifactItem>
<artifactItem>
<groupId>javax.xml.ws</groupId>
<artifactId>jaxws-api</artifactId>
<version>2.2.9</version>
<type>jar</type>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/endorsed</outputDirectory>
<silent>true</silent>
<artifactItems>
<artifactItem>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2</version>
</artifactItem>
<artifactItem>
<groupId>javax.xml.ws</groupId>
<artifactId>jaxws-api</artifactId>
<version>2.2</version>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<goals>
<goal>wsimport</goal>
</goals>
</execution>
</executions>
<configuration>
<wsdlDirectory>src/main/resources/wsdl</wsdlDirectory>
<wsdlFiles>
<wsdlFile>EsitoAttivazioneCessazione.wsdl</wsdlFile>
</wsdlFiles>
<vmArgs>
<vmArg>-Djavax.xml.accessExternalSchema=all</vmArg>
</vmArgs>
</configuration>
</plugin>
-->
<!-- packageName>dbcm.ws.esitoattivazionecessazione</packageName -->
</plugins>
</build>
</project>

View File

@@ -0,0 +1,8 @@
package dbcm.esitoattivazionecessazione.constants;
public class WebConstants {
public final static String tooManyResultMsg= "Il server ha fornito troppi risultati per un singolo pattern: ";
public final static String noResultMsg= "Il server non ha fornito risultati: ";
public final static String badRequestMsg= "E' stata fornita una request errata: ";
public final static String genericErrorMsg= "Esecuzione terminata in modo anomalo: ";
}

View File

@@ -0,0 +1,21 @@
package dbcm.esitoattivazionecessazione.listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.apache.log4j.PropertyConfigurator;
import dbcm.utilities.Resources;
public class ContextListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
PropertyConfigurator.configure(Resources.getDBCM_LOG4J_FILE());
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
}
}

View File

@@ -0,0 +1,158 @@
package dbcm.esitoattivazionecessazione.servlet;
import static java.util.concurrent.TimeUnit.SECONDS;
import java.io.IOException;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import dbcm.esitoattivazionecessazione.constants.WebConstants;
import dbcm.exception.BadRequestException;
import dbcm.exception.NoResultException;
import dbcm.exception.TooManyResultException;
import dbcm.service.business.Cessazioni13MService;
import dbcm.service.impl.business.Cessazioni13MServiceImpl;
import dbcm.utilities.DateUtils;
import dbcm.utilities.Resources;
import dbcm.utilities.StringUtils;
public class CessazioniGFPServlet extends HttpServlet {
private static final long serialVersionUID = -9016538832889990716L;
private Logger logger = Logger.getLogger(this.getClass().getName());
private final ScheduledExecutorService schedulerGFP = Executors.newScheduledThreadPool(1);
private static ScheduledFuture<?> schedulerGFPHandle = null;
private static Cessazioni13MService cessazioni13MService;
public void init() {
cessazioni13MService = new Cessazioni13MServiceImpl();
Boolean schedulerEnabled = new Boolean("1".equals(Resources.getDBCM_SCHEDULER_GFP_ENABLED()));
Integer hh = null;
try {
hh = Integer.parseInt(Resources.getDBCM_SCHEDULER_GFP_HH());
} catch (NumberFormatException nfEx) {
// imposto un default in caso di errore durante la lettura dal file di properties
hh = new Integer(1);
}
Integer mm = null;
try {
mm = Integer.parseInt(Resources.getDBCM_SCHEDULER_GFP_MM());
} catch (NumberFormatException nfEx) {
// imposto un default in caso di errore durante la lettura dal file di properties
mm = new Integer(0);
}
Calendar now = new GregorianCalendar();
Calendar nextDate = new GregorianCalendar(now.get(Calendar.YEAR), now.get(Calendar.MONTH), now.get(Calendar.DAY_OF_MONTH), hh, mm);
if (now.compareTo(nextDate) >= 0) {
nextDate.add(Calendar.DAY_OF_MONTH, 1);
}
Long initialDelay = new Long((nextDate.getTime().getTime() - now.getTime().getTime()) / 1000);
logger.info("init() - Orario di schedulazione GFP impostato alle ore " + hh + ":" + (mm > 9 ? "" + mm : "0" + mm));
logger.info("init() - La schedulazione per il recupero delle cessazioni da GFP è " + (schedulerEnabled ? "" : "dis") + "abilitata");
if (schedulerEnabled) {
//long hhLog = initialDelay / (60 * 60);
//long mmLog = (initialDelay - (hhLog * 60 * 60)) / 60;
//long ssLog = initialDelay - (hhLog * 60 * 60) - (mmLog * 60);
//logger.info("init() - Prossima schedulazione tra " + hhLog + " ore, " + mmLog + " minuti e " + ssLog + " secondi");
schedulerGFPHandle = schedulerGFP.scheduleAtFixedRate(new Runnable() {
public void run() {
try {
logger.info("run() - INIZIO");
Date yesterday = DateUtils.getYesterday();
logger.info("run() - Data di riferimento: " + DateUtils.toString(yesterday, DateUtils.FORMAT_DD_MM_YYYY));
runService(yesterday);
logger.info("run() - FINE");
} catch (Exception ex) {
logger.error("run() - Eccezione nel servizio: " + ex.getMessage());
}
}
}, initialDelay, (24 * 60 * 60), SECONDS);
}
}
public void destroy() {
if (schedulerGFPHandle != null) {
schedulerGFPHandle.cancel(true);
}
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
logger.info("doGet(HttpServletRequest, HttpServletResponse) - INIZIO");
try {
String dateFileToProcess = request.getParameter("dateFileToProcess");
Date dateForGetFiles = StringUtils.isEmpty(dateFileToProcess) ? DateUtils.getYesterday() : DateUtils.fromString(dateFileToProcess, DateUtils.FORMAT_YYYY_MM_DD_SEP);
runService(dateForGetFiles);
response.setStatus(HttpServletResponse.SC_OK);
request.setAttribute("success13mese", true);
} catch (TooManyResultException ex) {
response.setStatus(HttpServletResponse.SC_BAD_GATEWAY);
handleException(request, response, ex, WebConstants.tooManyResultMsg);
} catch (NoResultException ex) {
response.setStatus(HttpServletResponse.SC_BAD_GATEWAY);
handleException(request, response, ex, WebConstants.noResultMsg);
} catch (BadRequestException ex) {
response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
handleException(request, response, ex, WebConstants.badRequestMsg);
} catch (Exception ex) {
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
handleException(request, response, ex, WebConstants.genericErrorMsg);
} finally {
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
logger.info("doGet(HttpServletRequest, HttpServletResponse) - FINE");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
logger.info("doPost(HttpServletRequest, HttpServletResponse) - INIZIO");
try {
runService(DateUtils.getYesterday());
} catch (Exception ex) {
logger.error("doPost(HttpServletRequest, HttpServletResponse) - Exception: " + ex.getMessage());
}
logger.info("doPost(HttpServletRequest, HttpServletResponse) - FINE");
}
private void handleException(HttpServletRequest request, HttpServletResponse response, Exception ex, String msg) throws ServletException, IOException {
String errorMsg = msg + ex.getMessage();
logger.error("doGet(HttpServletRequest, HttpServletResponse) - Exception: " + errorMsg);
request.setAttribute("error13mese", true);
request.setAttribute("message", errorMsg);
}
private void runService(Date dateFileToProcess) throws Exception {
try {
Boolean wsEnabled = new Boolean ("1".equals(Resources.getDBCM_WS_ENABLED()));
if (wsEnabled) {
logger.info("runService(Date) - Esecuzione del servizio...");
cessazioni13MService.getEsitiCessazioniFromGFP(dateFileToProcess);
logger.info("runService(Date) - Esecuzione terminata con successo.");
} else {
logger.info("runService(Date) - Servizio disabilitato.");
}
} catch (Exception ex) {
logger.error("runService()- Esecuzione terminata in modo anomalo: " + ex.getMessage());
throw ex;
}
}
}

View File

@@ -0,0 +1,81 @@
package dbcm.esitoattivazionecessazione.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import dbcm.esitoattivazionecessazione.constants.WebConstants;
import dbcm.exception.BadRequestException;
import dbcm.exception.NoResultException;
import dbcm.exception.TooManyResultException;
import dbcm.service.business.Cessazioni13MService;
import dbcm.service.impl.business.Cessazioni13MServiceImpl;
import dbcm.utilities.Resources;
public class CessazioniGFPServletFromFileName extends HttpServlet{
private static final long serialVersionUID = 1L;
private Logger logger = Logger.getLogger(this.getClass().getName());
private static Cessazioni13MService cessazioni13MService;
public void init() {
cessazioni13MService = new Cessazioni13MServiceImpl();
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
logger.info("doGet(HttpServletRequest, HttpServletResponse) - INIZIO");
try {
String nameFileToProcess = request.getParameter("nameFileToProcess");
String pathName = request.getParameter("pathName");
runService(nameFileToProcess,pathName);
response.setStatus(HttpServletResponse.SC_OK);
request.setAttribute("success13mese", true);
} catch (TooManyResultException ex) {
response.setStatus(HttpServletResponse.SC_BAD_GATEWAY);
handleException(request, response, ex, WebConstants.tooManyResultMsg);
} catch (NoResultException ex) {
response.setStatus(HttpServletResponse.SC_BAD_GATEWAY);
handleException(request, response, ex, WebConstants.noResultMsg);
} catch (BadRequestException ex) {
response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
handleException(request, response, ex, WebConstants.badRequestMsg);
} catch (Exception ex) {
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
handleException(request, response, ex, WebConstants.genericErrorMsg);
} finally {
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
logger.info("doGet(HttpServletRequest, HttpServletResponse) - FINE");
}
private void runService(String fileNameToProcess, String pathName) throws Exception {
try {
Boolean wsEnabled = new Boolean ("1".equals(Resources.getDBCM_WS_ENABLED()));
if (wsEnabled) {
logger.info("runService(file) - Esecuzione del servizio...");
cessazioni13MService.getEsitiCessazioniFromGFP(fileNameToProcess, pathName);
logger.info("runService(file) - Esecuzione terminata con successo.");
} else {
logger.info("runService(file) - Servizio disabilitato.");
}
} catch (Exception ex) {
logger.error("runService(file)- Esecuzione terminata in modo anomalo: " + ex.getMessage());
throw ex;
}
}
private void handleException(HttpServletRequest request, HttpServletResponse response, Exception ex, String msg) throws ServletException, IOException {
String errorMsg = msg + ex.getMessage();
logger.error("doGet(HttpServletRequest, HttpServletResponse) - Exception: " + errorMsg);
request.setAttribute("error13mese", true);
request.setAttribute("message", errorMsg);
}
}

View File

@@ -0,0 +1,113 @@
package dbcm.esitoattivazionecessazione.servlet;
import static java.util.concurrent.TimeUnit.SECONDS;
import java.io.IOException;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import dbcm.esitoattivazionecessazione.constants.WebConstants;
import dbcm.service.business.EsitoService;
import dbcm.service.impl.business.EsitoServiceImpl;
import dbcm.utilities.Resources;
public class GeneraFileEsitiServlet extends HttpServlet {
private static final long serialVersionUID = -9016538832889990716L;
private Logger logger = Logger.getLogger(this.getClass().getName());
private final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
private static ScheduledFuture<?> schedulerHandle = null;
private static EsitoService sendEsitoService;
public void init() {
sendEsitoService = new EsitoServiceImpl();
Boolean schedulerEnabled = new Boolean("1".equals(Resources.getDBCM_SCHEDULER_ENABLED()));
Long intervallo = null;
try {
intervallo = Long.parseLong(Resources.getDBCM_SCHEDULER_INTERVAL());
} catch (NumberFormatException nfEx) {
// imposto di default 15 minuti (900 secondi)
intervallo = new Long(900);
}
logger.info("init() - Intervallo di schedulazione impostato a " + intervallo + " secondi");
logger.info("init() - La schedulazione per la creazione del file degli esiti è " + (schedulerEnabled ? "" : "dis") + "abilitata");
if (schedulerEnabled) {
schedulerHandle = scheduler.scheduleAtFixedRate(new Runnable() {
public void run() {
try {
runService();
} catch (Exception e) {
logger.error("Esecuzione terminata in modo anomalo: " + e.getMessage());
}
}
}, 0, intervallo, SECONDS);
}
}
public void destroy() {
if (schedulerHandle != null) {
schedulerHandle.cancel(true);
}
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
logger.info("doGet(HttpServletRequest, HttpServletResponse) - INIZIO");
try {
runService();
response.setStatus(HttpServletResponse.SC_OK);
request.setAttribute("successgenesiti", true);
} catch (Exception ex) {
response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
String errorMsg = WebConstants.genericErrorMsg + ex.getMessage();
request.setAttribute("errorgenesiti", true);
request.setAttribute("message", errorMsg);
logger.error("doPost(HttpServletRequest, HttpServletResponse) - Exception: " + errorMsg);
} finally {
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
logger.info("doGet(HttpServletRequest, HttpServletResponse) - FINE");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
logger.info("doPost(HttpServletRequest, HttpServletResponse) - INIZIO");
try {
runService();
} catch (Exception ex) {
logger.error("doPost(HttpServletRequest, HttpServletResponse) - Exception: " + ex.getMessage());
}
logger.info("doPost(HttpServletRequest, HttpServletResponse) - FINE");
}
private void runService() throws Exception {
try {
Boolean wsEnabled = new Boolean ("1".equals(Resources.getDBCM_WS_ENABLED()));
if (wsEnabled) {
logger.info("runService() - Esecuzione del servizio...");
sendEsitoService.createFileEsitiHandler();
logger.info("runService() - Esecuzione terminata con successo.");
} else {
logger.info("runService() - Servizio disabilitato.");
}
} catch (Exception e) {
logger.error("runService() - Esecuzione terminata in modo anomalo: " + e.getMessage());
throw e;
}
}
}

View File

@@ -0,0 +1,119 @@
package dbcm.esitoattivazionecessazione.ws;
import java.io.ByteArrayInputStream;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.xml.XMLConstants;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.namespace.QName;
import javax.xml.transform.stream.StreamSource;
import javax.xml.validation.Schema;
import javax.xml.validation.SchemaFactory;
import javax.xml.validation.Validator;
import javax.xml.ws.Holder;
import org.apache.log4j.Logger;
import dbcm.model.bean.EsitoAttCessModel;
import dbcm.model.business.ServiceErrMap;
import dbcm.service.business.EsitoService;
import dbcm.service.impl.business.EsitoServiceImpl;
import dbcm.soa.esitoattivazionecessazione.EsitoAttivazioneCessazionePortType;
import dbcm.soa.esitoattivazionecessazione._2021_02_01.Request;
import dbcm.soa.esitoattivazionecessazione._2021_02_01.Response;
import dbcm.utilities.DateUtils;
import dbcm.utilities.Resources;
import dbcm.utilities.StringUtils;
import it.telecomitalia.soa.soap.soapheader.HeaderType;
@WebService(name = "esitoAttivazioneCessazionePortType", targetNamespace = "http://dbcm/SOA/EsitoAttivazioneCessazione")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
@XmlSeeAlso({
dbcm.soa.esitoattivazionecessazione._2021_02_01.ObjectFactory.class,
it.telecomitalia.soa.soap.soapheader.ObjectFactory.class
})
public class EsitoAttivazioneCessazione implements EsitoAttivazioneCessazionePortType {
private Logger logger = Logger.getLogger(this.getClass().getName());
@Override
@WebMethod(action = "sendEsito")
@WebResult(name = "response", targetNamespace = "http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01", partName = "body")
public Response sendEsito(
@WebParam(name = "Header", targetNamespace = "http://telecomitalia.it/SOA/SOAP/SOAPHeader", header = true, mode = WebParam.Mode.INOUT, partName = "header")
Holder<HeaderType> header,
@WebParam(name = "request", targetNamespace = "http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01", partName = "body")
Request body) throws Exception {
logger.info("sendEsito(Header, Body) - INIZIO");
Boolean wsEnabled = new Boolean ("1".equals(Resources.getDBCM_WS_ENABLED()));
String responseCode = null;
try {
logger.info("sendEsito(Header, Body) - Il webservice per l'inserimento dell'esito è " + (wsEnabled ? "" : "dis") + "abilitato");
if (wsEnabled) {
// Validazione dell'header
JAXBElement<HeaderType> rootElementHeader = new JAXBElement<HeaderType>(new QName("http://telecomitalia.it/SOA/SOAP/SOAPHeader", "Header", "ns"), HeaderType.class, header.value);
String xmlHeader = StringUtils.fromObject(HeaderType.class, rootElementHeader);
logger.info("sendEsito(Header, Body) - XML Header:\n" + xmlHeader);
validate("/wsdl/SOAPHeader_v1.1.xsd", xmlHeader);
logger.info("sendEsito(Header, Body) - XML Header: Validazione OK");
// Validazione del body
//JAXBElement<Request> rootElementBody = new JAXBElement<Request>(new QName("http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01", "request", "ns"), Request.class, body);
String xmlRequest = StringUtils.fromObject(Request.class, body);
logger.info("sendEsito(Header, Body) - XML Request:\n" + xmlRequest);
validate("/wsdl/EsitoAttivazioneCessazione.xsd", xmlRequest);
logger.info("sendEsito(Header, Body) - XML Request: Validazione OK");
// Mapping Request WS -> Model Esito
EsitoAttCessModel esitoAttCess = new EsitoAttCessModel();
String msisdn = body.getMsisdn();
esitoAttCess.setMsisdn(msisdn.length() <= 10 ? "39" + msisdn : msisdn);
esitoAttCess.setIdentificativoRichiesta(body.getIdentificativoRichiesta());
esitoAttCess.setTipoRichiesta(body.getTipoRichiesta());
esitoAttCess.setDataEspletamento(DateUtils.fromString(body.getDataEspletamento(), DateUtils.FORMAT_YYYY_MM_DD_HH_MM_SS));
esitoAttCess.setDataRicezioneWeb(DateUtils.getToday());
esitoAttCess.setTipoLinea(body.getTipoLinea());
esitoAttCess.setRgn(body.getRgn());
esitoAttCess.setImsi(body.getImsi());
esitoAttCess.setSistemaChiamante(body.getSistemaChiamante());
// Call service per il salvataggio dell'esito in tabella
EsitoService sendEsitoService = new EsitoServiceImpl();
responseCode = sendEsitoService.sendEsitoHandler(esitoAttCess);
logger.info("sendEsito(Header, Body) - Inserimento esito eseguito con successo");
} else {
responseCode = ServiceErrMap.C_KO_GENERIC_ERROR;
logger.info("sendEsito(Header, Body) - Il WS è disabilitato, non è possibile procedere con l'inserimento dell'esito");
}
// Mapping Return Code -> Response WS
Response response = new Response();
ServiceErrMap serviceErrMap = new ServiceErrMap();
response.setCodice(responseCode);
response.setDescrizione(serviceErrMap.get(responseCode));
logger.info("sendEsito(Header, Body) - XML Response:\n" + StringUtils.fromObject(Response.class, response));
logger.info("sendEsito(Header, Body) - FINE");
return response;
} catch (Exception ex) {
logger.error("sendEsito(Header, Body) - Inserimento esito NON eseguito a causa della seguente eccezione: ", ex);
throw ex;
}
}
private void validate(String xsdFile, String xmlContent) throws Exception {
SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = factory.newSchema(new StreamSource(getClass().getClassLoader().getResourceAsStream(xsdFile)));
Validator validator = schema.newValidator();
validator.validate(new StreamSource(new ByteArrayInputStream(xmlContent.getBytes())));
}
}
//@Resource
//WebServiceContext wsContext;

View File

@@ -0,0 +1,42 @@
package dbcm.soa.esitoattivazionecessazione;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.ws.Holder;
import dbcm.soa.esitoattivazionecessazione._2021_02_01.Request;
import dbcm.soa.esitoattivazionecessazione._2021_02_01.Response;
import it.telecomitalia.soa.soap.soapheader.HeaderType;
/**
* This class was generated by the JAX-WS RI.
* JAX-WS RI 2.2.9-b14002
* Generated source version: 2.2
*/
@WebService(name = "esitoAttivazioneCessazionePortType", targetNamespace = "http://dbcm/SOA/EsitoAttivazioneCessazione")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
@XmlSeeAlso({
dbcm.soa.esitoattivazionecessazione._2021_02_01.ObjectFactory.class,
it.telecomitalia.soa.soap.soapheader.ObjectFactory.class
})
public interface EsitoAttivazioneCessazionePortType {
/**
* @param header
* @param body
* @return
* returns dbcm.soa.esitoattivazionecessazione._2021_02_01.Response
*/
@WebMethod(action = "sendEsito")
@WebResult(name = "response", targetNamespace = "http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01", partName = "body")
public Response sendEsito(
@WebParam(name = "Header", targetNamespace = "http://telecomitalia.it/SOA/SOAP/SOAPHeader", header = true, mode = WebParam.Mode.INOUT, partName = "header")
Holder<HeaderType> header,
@WebParam(name = "request", targetNamespace = "http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01", partName = "body")
Request body) throws Exception;
}

View File

@@ -0,0 +1,48 @@
package dbcm.soa.esitoattivazionecessazione._2021_02_01;
import javax.xml.bind.annotation.XmlRegistry;
/**
* This object contains factory methods for each
* Java content interface and Java element interface
* generated in the dbcm.soa.esitoattivazionecessazione._2021_02_01 package.
* <p>An ObjectFactory allows you to programatically
* construct new instances of the Java representation
* for XML content. The Java representation of XML
* content can consist of schema derived interfaces
* and classes representing the binding of schema
* type definitions, element declarations and model
* groups. Factory methods for each of these are
* provided in this class.
*
*/
@XmlRegistry
public class ObjectFactory {
/**
* Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: dbcm.soa.esitoattivazionecessazione._2021_02_01
*
*/
public ObjectFactory() {
}
/**
* Create an instance of {@link Request }
*
*/
public Request createRequest() {
return new Request();
}
/**
* Create an instance of {@link Response }
*
*/
public Response createResponse() {
return new Response();
}
}

View File

@@ -0,0 +1,256 @@
package dbcm.soa.esitoattivazionecessazione._2021_02_01;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Classe Java per anonymous complex type.
*
* <p>Il seguente frammento di schema specifica il contenuto previsto contenuto in questa classe.
*
* <pre>
* &lt;complexType>
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="msisdn" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string15Type"/>
* &lt;element name="identificativoRichiesta" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string23Type" minOccurs="0"/>
* &lt;element name="tipoRichiesta" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}tipoRichiestaType"/>
* &lt;element name="dataEspletamento" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}espletamentoDateType"/>
* &lt;element name="tipoLinea" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string15Type" minOccurs="0"/>
* &lt;element name="rgn" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string3Type" minOccurs="0"/>
* &lt;element name="imsi" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string15Type" minOccurs="0"/>
* &lt;element name="sistemaChiamante" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string15Type"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"msisdn",
"identificativoRichiesta",
"tipoRichiesta",
"dataEspletamento",
"tipoLinea",
"rgn",
"imsi",
"sistemaChiamante"
})
@XmlRootElement(name = "request")
public class Request {
@XmlElement(required = true)
protected String msisdn;
protected String identificativoRichiesta;
@XmlElement(required = true)
protected String tipoRichiesta;
@XmlElement(required = true)
protected String dataEspletamento;
protected String tipoLinea;
protected String rgn;
protected String imsi;
@XmlElement(required = true)
protected String sistemaChiamante;
/**
* Recupera il valore della proprietà msisdn.
*
* @return
* possible object is
* {@link String }
*
*/
public String getMsisdn() {
return msisdn;
}
/**
* Imposta il valore della proprietà msisdn.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setMsisdn(String value) {
this.msisdn = value;
}
/**
* Recupera il valore della proprietà identificativoRichiesta.
*
* @return
* possible object is
* {@link String }
*
*/
public String getIdentificativoRichiesta() {
return identificativoRichiesta;
}
/**
* Imposta il valore della proprietà identificativoRichiesta.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setIdentificativoRichiesta(String value) {
this.identificativoRichiesta = value;
}
/**
* Recupera il valore della proprietà tipoRichiesta.
*
* @return
* possible object is
* {@link String }
*
*/
public String getTipoRichiesta() {
return tipoRichiesta;
}
/**
* Imposta il valore della proprietà tipoRichiesta.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setTipoRichiesta(String value) {
this.tipoRichiesta = value;
}
/**
* Recupera il valore della proprietà dataEspletamento.
*
* @return
* possible object is
* {@link String }
*
*/
public String getDataEspletamento() {
return dataEspletamento;
}
/**
* Imposta il valore della proprietà dataEspletamento.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setDataEspletamento(String value) {
this.dataEspletamento = value;
}
/**
* Recupera il valore della proprietà tipoLinea.
*
* @return
* possible object is
* {@link String }
*
*/
public String getTipoLinea() {
return tipoLinea;
}
/**
* Imposta il valore della proprietà tipoLinea.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setTipoLinea(String value) {
this.tipoLinea = value;
}
/**
* Recupera il valore della proprietà rgn.
*
* @return
* possible object is
* {@link String }
*
*/
public String getRgn() {
return rgn;
}
/**
* Imposta il valore della proprietà rgn.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setRgn(String value) {
this.rgn = value;
}
/**
* Recupera il valore della proprietà imsi.
*
* @return
* possible object is
* {@link String }
*
*/
public String getImsi() {
return imsi;
}
/**
* Imposta il valore della proprietà imsi.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setImsi(String value) {
this.imsi = value;
}
/**
* Recupera il valore della proprietà sistemaChiamante.
*
* @return
* possible object is
* {@link String }
*
*/
public String getSistemaChiamante() {
return sistemaChiamante;
}
/**
* Imposta il valore della proprietà sistemaChiamante.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setSistemaChiamante(String value) {
this.sistemaChiamante = value;
}
}

View File

@@ -0,0 +1,92 @@
package dbcm.soa.esitoattivazionecessazione._2021_02_01;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Classe Java per anonymous complex type.
*
* <p>Il seguente frammento di schema specifica il contenuto previsto contenuto in questa classe.
*
* <pre>
* &lt;complexType>
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="codice" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string3Type"/>
* &lt;element name="descrizione" type="{http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01}string255Type"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"codice",
"descrizione"
})
@XmlRootElement(name = "response")
public class Response {
@XmlElement(required = true)
protected String codice;
@XmlElement(required = true)
protected String descrizione;
/**
* Recupera il valore della proprietà codice.
*
* @return
* possible object is
* {@link String }
*
*/
public String getCodice() {
return codice;
}
/**
* Imposta il valore della proprietà codice.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setCodice(String value) {
this.codice = value;
}
/**
* Recupera il valore della proprietà descrizione.
*
* @return
* possible object is
* {@link String }
*
*/
public String getDescrizione() {
return descrizione;
}
/**
* Imposta il valore della proprietà descrizione.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setDescrizione(String value) {
this.descrizione = value;
}
}

View File

@@ -0,0 +1,2 @@
@javax.xml.bind.annotation.XmlSchema(namespace = "http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package dbcm.soa.esitoattivazionecessazione._2021_02_01;

View File

@@ -0,0 +1,170 @@
package it.telecomitalia.soa.soap.soapheader;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
/**
* Informazioni di contesto dell'invocazione del servizio
*
* <p>Classe Java per HeaderType complex type.
*
* <p>Il seguente frammento di schema specifica il contenuto previsto contenuto in questa classe.
*
* <pre>
* &lt;complexType name="HeaderType">
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="sourceSystem" type="{http://telecomitalia.it/SOA/SOAP/SOAPHeader}sourceSystemType" minOccurs="0"/>
* &lt;element name="interactionDate" type="{http://telecomitalia.it/SOA/SOAP/SOAPHeader}interactionDateType" minOccurs="0"/>
* &lt;element name="businessID" type="{http://telecomitalia.it/SOA/SOAP/SOAPHeader}businessIDType" minOccurs="0"/>
* &lt;element name="messageID" type="{http://telecomitalia.it/SOA/SOAP/SOAPHeader}messageIDType" minOccurs="0"/>
* &lt;element name="transactionID" type="{http://telecomitalia.it/SOA/SOAP/SOAPHeader}transactionIDType" minOccurs="0"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "HeaderType", propOrder = {
"sourceSystem",
"interactionDate",
"businessID",
"messageID",
"transactionID"
})
public class HeaderType {
protected String sourceSystem;
protected InteractionDateType interactionDate;
protected String businessID;
protected String messageID;
protected String transactionID;
/**
* Recupera il valore della proprietà sourceSystem.
*
* @return
* possible object is
* {@link String }
*
*/
public String getSourceSystem() {
return sourceSystem;
}
/**
* Imposta il valore della proprietà sourceSystem.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setSourceSystem(String value) {
this.sourceSystem = value;
}
/**
* Recupera il valore della proprietà interactionDate.
*
* @return
* possible object is
* {@link InteractionDateType }
*
*/
public InteractionDateType getInteractionDate() {
return interactionDate;
}
/**
* Imposta il valore della proprietà interactionDate.
*
* @param value
* allowed object is
* {@link InteractionDateType }
*
*/
public void setInteractionDate(InteractionDateType value) {
this.interactionDate = value;
}
/**
* Recupera il valore della proprietà businessID.
*
* @return
* possible object is
* {@link String }
*
*/
public String getBusinessID() {
return businessID;
}
/**
* Imposta il valore della proprietà businessID.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setBusinessID(String value) {
this.businessID = value;
}
/**
* Recupera il valore della proprietà messageID.
*
* @return
* possible object is
* {@link String }
*
*/
public String getMessageID() {
return messageID;
}
/**
* Imposta il valore della proprietà messageID.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setMessageID(String value) {
this.messageID = value;
}
/**
* Recupera il valore della proprietà transactionID.
*
* @return
* possible object is
* {@link String }
*
*/
public String getTransactionID() {
return transactionID;
}
/**
* Imposta il valore della proprietà transactionID.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setTransactionID(String value) {
this.transactionID = value;
}
}

View File

@@ -0,0 +1,90 @@
package it.telecomitalia.soa.soap.soapheader;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
/**
* <p>Classe Java per interactionDateType complex type.
*
* <p>Il seguente frammento di schema specifica il contenuto previsto contenuto in questa classe.
*
* <pre>
* &lt;complexType name="interactionDateType">
* &lt;complexContent>
* &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* &lt;sequence>
* &lt;element name="Date" type="{http://telecomitalia.it/SOA/SOAP/SOAPHeader}dateType"/>
* &lt;element name="Time" type="{http://telecomitalia.it/SOA/SOAP/SOAPHeader}timeType"/>
* &lt;/sequence>
* &lt;/restriction>
* &lt;/complexContent>
* &lt;/complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "interactionDateType", propOrder = {
"date",
"time"
})
public class InteractionDateType {
@XmlElement(name = "Date", required = true)
protected String date;
@XmlElement(name = "Time", required = true)
protected String time;
/**
* Recupera il valore della proprietà date.
*
* @return
* possible object is
* {@link String }
*
*/
public String getDate() {
return date;
}
/**
* Imposta il valore della proprietà date.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setDate(String value) {
this.date = value;
}
/**
* Recupera il valore della proprietà time.
*
* @return
* possible object is
* {@link String }
*
*/
public String getTime() {
return time;
}
/**
* Imposta il valore della proprietà time.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setTime(String value) {
this.time = value;
}
}

View File

@@ -0,0 +1,61 @@
package it.telecomitalia.soa.soap.soapheader;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlElementDecl;
import javax.xml.bind.annotation.XmlRegistry;
import javax.xml.namespace.QName;
/**
* This object contains factory methods for each
* Java content interface and Java element interface
* generated in the it.telecomitalia.soa.soap.soapheader package.
* <p>An ObjectFactory allows you to programatically
* construct new instances of the Java representation
* for XML content. The Java representation of XML
* content can consist of schema derived interfaces
* and classes representing the binding of schema
* type definitions, element declarations and model
* groups. Factory methods for each of these are
* provided in this class.
*
*/
@XmlRegistry
public class ObjectFactory {
private final static QName _Header_QNAME = new QName("http://telecomitalia.it/SOA/SOAP/SOAPHeader", "Header");
/**
* Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: it.telecomitalia.soa.soap.soapheader
*
*/
public ObjectFactory() {
}
/**
* Create an instance of {@link HeaderType }
*
*/
public HeaderType createHeaderType() {
return new HeaderType();
}
/**
* Create an instance of {@link InteractionDateType }
*
*/
public InteractionDateType createInteractionDateType() {
return new InteractionDateType();
}
/**
* Create an instance of {@link JAXBElement }{@code <}{@link HeaderType }{@code >}}
*
*/
@XmlElementDecl(namespace = "http://telecomitalia.it/SOA/SOAP/SOAPHeader", name = "Header")
public JAXBElement<HeaderType> createHeader(HeaderType value) {
return new JAXBElement<HeaderType>(_Header_QNAME, HeaderType.class, null, value);
}
}

View File

@@ -0,0 +1,2 @@
@javax.xml.bind.annotation.XmlSchema(namespace = "http://telecomitalia.it/SOA/SOAP/SOAPHeader", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package it.telecomitalia.soa.soap.soapheader;

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:nsSchema="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:head="http://telecomitalia.it/SOA/SOAP/SOAPHeader" xmlns:tns="http://dbcm/SOA/EsitoAttivazioneCessazione" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://dbcm/SOA/EsitoAttivazioneCessazione">
<wsdl:types>
<xsd:schema targetNamespace="http://dbcm/SOA/EsitoAttivazioneCessazione">
<xsd:import namespace="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" schemaLocation="EsitoAttivazioneCessazione.xsd" />
<xsd:import namespace="http://telecomitalia.it/SOA/SOAP/SOAPHeader" schemaLocation="SOAPHeader_v1.1.xsd" />
</xsd:schema>
</wsdl:types>
<wsdl:message name="request">
<wsdl:part name="header" element="head:Header" />
<wsdl:part name="body" element="nsSchema:request" />
</wsdl:message>
<wsdl:message name="response">
<wsdl:part name="header" element="head:Header" />
<wsdl:part name="body" element="nsSchema:response" />
</wsdl:message>
<wsdl:portType name="esitoAttivazioneCessazionePortType">
<wsdl:operation name="sendEsito">
<wsdl:input message="tns:request" />
<wsdl:output message="tns:response" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="esitoAttivazioneCessazioneBinding" type="tns:esitoAttivazioneCessazionePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="sendEsito">
<soap:operation soapAction="sendEsito" style="document" />
<wsdl:input>
<soap:body parts="body" use="literal" />
<soap:header message="tns:request" part="header" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body parts="body" use="literal" />
<soap:header message="tns:response" part="header" use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="EsitoAttivazioneCessazione">
<wsdl:port name="EsitoAttivazioneCessazioneEndPoint" binding="tns:esitoAttivazioneCessazioneBinding">
<soap:address location="http://10.174.243.199:7151/dbcm/EsitoAttivazioneCessazione" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

View File

@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sm="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" targetNamespace="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" elementFormDefault="qualified" version="1.0">
<xs:element name="request">
<xs:complexType>
<xs:sequence>
<xs:element name="msisdn" type="sm:string15Type" />
<xs:element name="identificativoRichiesta" type="sm:string23Type" minOccurs="0" />
<xs:element name="tipoRichiesta" type="sm:tipoRichiestaType" />
<xs:element name="dataEspletamento" type="sm:espletamentoDateType" />
<xs:element name="tipoLinea" type="sm:string15Type" minOccurs="0" />
<xs:element name="rgn" type="sm:string3Type" minOccurs="0" />
<xs:element name="imsi" type="sm:string15Type" minOccurs="0" />
<xs:element name="sistemaChiamante" type="sm:string15Type" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="response">
<xs:complexType>
<xs:sequence>
<xs:element name="codice" type="sm:string3Type" />
<xs:element name="descrizione" type="sm:string255Type" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="tipoRichiestaType">
<xs:restriction base="xs:string">
<xs:pattern value="1|2|3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string2Type">
<xs:restriction base="xs:string">
<xs:maxLength value="2" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string3Type">
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string15Type">
<xs:restriction base="xs:string">
<xs:maxLength value="15" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string23Type">
<xs:restriction base="xs:string">
<xs:maxLength value="23" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string255Type">
<xs:restriction base="xs:string">
<xs:maxLength value="255" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="espletamentoDateType">
<xs:restriction base="xs:string">
<xs:pattern value="\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:h="http://telecomitalia.it/SOA/SOAP/SOAPHeader" targetNamespace="http://telecomitalia.it/SOA/SOAP/SOAPHeader" elementFormDefault="qualified" version="1.1">
<!-- Start Types Definition -->
<xs:complexType name="HeaderType">
<xs:annotation>
<xs:documentation>Informazioni di contesto dell'invocazione del servizio</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="sourceSystem" type="h:sourceSystemType" minOccurs="0">
<xs:annotation>
<xs:documentation>Sistema da cui proviene la richiesta</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interactionDate" type="h:interactionDateType" minOccurs="0">
<xs:annotation>
<xs:documentation>Data e Ora di invocazione del servizio</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="businessID" type="h:businessIDType" minOccurs="0">
<xs:annotation>
<xs:documentation>Identifica univocamente il processo di business</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="messageID" type="h:messageIDType" minOccurs="0">
<xs:annotation>
<xs:documentation>Identifica il messaggio in maniera univoca</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="transactionID" type="h:transactionIDType" minOccurs="0">
<xs:annotation>
<xs:documentation>Identifica la transazione per gestire i ritorni sincroni</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="dateType">
<xs:restriction base="xs:string">
<xs:pattern value="\d{4}-\d{2}-\d{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="timeType">
<xs:restriction base="xs:string">
<xs:pattern value="\d{2}:\d{2}:\d{2}((Z)|(\.\d{1,}Z?)|((\+|-)\d{2}:\d{2}))?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="businessIDType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="messageIDType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="sourceSystemType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="transactionIDType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="interactionDateType">
<xs:sequence>
<xs:element name="Date" type="h:dateType">
<xs:annotation>
<xs:documentation>Per compatibilità con i diversi prodotti o librerie software (es. Axis2 e BW) si è scelto di utilizzare il tipo string. La restizione applicata accetta il formato: CCYY-MM-DD. Non sono presenti restrizioni sul range dei valori.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Time" type="h:timeType">
<xs:annotation>
<xs:documentation>Per compatibilità con i diversi prodotti o librerie software (es. Axis2 e BW) si è scelto di utilizzare il tipo string. La restizione applicata accetta il formato: hh:mm:ss.sss. Non sono presenti restrizioni sul range dei valori. Per gli ulteriori dettagli sul formato fare riferimento alla definizione di Time Data Type W3C, presente al link: http://www.w3schools.com/Schema/schema_dtypes_date.asp</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<!-- End Types Definition -->
<xs:element name="Header" type="h:HeaderType"/>
</xs:schema>

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:nsSchema="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:head="http://telecomitalia.it/SOA/SOAP/SOAPHeader" xmlns:tns="http://dbcm/SOA/EsitoAttivazioneCessazione" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://dbcm/SOA/EsitoAttivazioneCessazione">
<wsdl:types>
<xsd:schema targetNamespace="http://dbcm/SOA/EsitoAttivazioneCessazione">
<xsd:import namespace="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" schemaLocation="EsitoAttivazioneCessazione.xsd" />
<xsd:import namespace="http://telecomitalia.it/SOA/SOAP/SOAPHeader" schemaLocation="SOAPHeader_v1.1.xsd" />
</xsd:schema>
</wsdl:types>
<wsdl:message name="request">
<wsdl:part name="header" element="head:Header" />
<wsdl:part name="body" element="nsSchema:request" />
</wsdl:message>
<wsdl:message name="response">
<wsdl:part name="header" element="head:Header" />
<wsdl:part name="body" element="nsSchema:response" />
</wsdl:message>
<wsdl:portType name="esitoAttivazioneCessazionePortType">
<wsdl:operation name="sendEsito">
<wsdl:input message="tns:request" />
<wsdl:output message="tns:response" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="esitoAttivazioneCessazioneBinding" type="tns:esitoAttivazioneCessazionePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="sendEsito">
<soap:operation soapAction="sendEsito" style="document" />
<wsdl:input>
<soap:body parts="body" use="literal" />
<soap:header message="tns:request" part="header" use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body parts="body" use="literal" />
<soap:header message="tns:response" part="header" use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="EsitoAttivazioneCessazione">
<wsdl:port name="EsitoAttivazioneCessazioneEndPoint" binding="tns:esitoAttivazioneCessazioneBinding">
<soap:address location="http://10.174.243.199:7151/dbcm/EsitoAttivazioneCessazione" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

View File

@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sm="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" targetNamespace="http://dbcm/SOA/EsitoAttivazioneCessazione/2021-02-01" elementFormDefault="qualified" version="1.0">
<xs:element name="request">
<xs:complexType>
<xs:sequence>
<xs:element name="msisdn" type="sm:string15Type" />
<xs:element name="identificativoRichiesta" type="sm:string23Type" minOccurs="0" />
<xs:element name="tipoRichiesta" type="sm:tipoRichiestaType" />
<xs:element name="dataEspletamento" type="sm:espletamentoDateType" />
<xs:element name="tipoLinea" type="sm:string15Type" minOccurs="0" />
<xs:element name="rgn" type="sm:string3Type" minOccurs="0" />
<xs:element name="imsi" type="sm:string15Type" minOccurs="0" />
<xs:element name="sistemaChiamante" type="sm:string15Type" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="response">
<xs:complexType>
<xs:sequence>
<xs:element name="codice" type="sm:string3Type" />
<xs:element name="descrizione" type="sm:string255Type" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:simpleType name="tipoRichiestaType">
<xs:restriction base="xs:string">
<xs:pattern value="1|2|3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string2Type">
<xs:restriction base="xs:string">
<xs:maxLength value="2" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string3Type">
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string15Type">
<xs:restriction base="xs:string">
<xs:maxLength value="15" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string23Type">
<xs:restriction base="xs:string">
<xs:maxLength value="23" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string255Type">
<xs:restriction base="xs:string">
<xs:maxLength value="255" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="espletamentoDateType">
<xs:restriction base="xs:string">
<xs:pattern value="\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:h="http://telecomitalia.it/SOA/SOAP/SOAPHeader" targetNamespace="http://telecomitalia.it/SOA/SOAP/SOAPHeader" elementFormDefault="qualified" version="1.1">
<!-- Start Types Definition -->
<xs:complexType name="HeaderType">
<xs:annotation>
<xs:documentation>Informazioni di contesto dell'invocazione del servizio</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="sourceSystem" type="h:sourceSystemType" minOccurs="0">
<xs:annotation>
<xs:documentation>Sistema da cui proviene la richiesta</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="interactionDate" type="h:interactionDateType" minOccurs="0">
<xs:annotation>
<xs:documentation>Data e Ora di invocazione del servizio</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="businessID" type="h:businessIDType" minOccurs="0">
<xs:annotation>
<xs:documentation>Identifica univocamente il processo di business</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="messageID" type="h:messageIDType" minOccurs="0">
<xs:annotation>
<xs:documentation>Identifica il messaggio in maniera univoca</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="transactionID" type="h:transactionIDType" minOccurs="0">
<xs:annotation>
<xs:documentation>Identifica la transazione per gestire i ritorni sincroni</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="dateType">
<xs:restriction base="xs:string">
<xs:pattern value="\d{4}-\d{2}-\d{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="timeType">
<xs:restriction base="xs:string">
<xs:pattern value="\d{2}:\d{2}:\d{2}((Z)|(\.\d{1,}Z?)|((\+|-)\d{2}:\d{2}))?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="businessIDType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="messageIDType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="sourceSystemType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="transactionIDType">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="interactionDateType">
<xs:sequence>
<xs:element name="Date" type="h:dateType">
<xs:annotation>
<xs:documentation>Per compatibilità con i diversi prodotti o librerie software (es. Axis2 e BW) si è scelto di utilizzare il tipo string. La restizione applicata accetta il formato: CCYY-MM-DD. Non sono presenti restrizioni sul range dei valori.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Time" type="h:timeType">
<xs:annotation>
<xs:documentation>Per compatibilità con i diversi prodotti o librerie software (es. Axis2 e BW) si è scelto di utilizzare il tipo string. La restizione applicata accetta il formato: hh:mm:ss.sss. Non sono presenti restrizioni sul range dei valori. Per gli ulteriori dettagli sul formato fare riferimento alla definizione di Time Data Type W3C, presente al link: http://www.w3schools.com/Schema/schema_dtypes_date.asp</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<!-- End Types Definition -->
<xs:element name="Header" type="h:HeaderType"/>
</xs:schema>

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime" version="2.0">
<endpoint name="EsitoAttivazioneCessazione" implementation="dbcm.esitoattivazionecessazione.ws.EsitoAttivazioneCessazione" url-pattern="/EsitoAttivazioneCessazione"></endpoint>
</endpoints>

View File

@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>dbcm</display-name>
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
<listener>
<listener-class>dbcm.esitoattivazionecessazione.listener.ContextListener</listener-class>
</listener>
<servlet>
<servlet-name>esitoAttivazioneCessazione</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>esitoAttivazioneCessazione</servlet-name>
<url-pattern>/EsitoAttivazioneCessazione</url-pattern>
</servlet-mapping>
<servlet>
<description></description>
<display-name>GeneraFileEsitiServlet</display-name>
<servlet-name>GeneraFileEsitiServlet</servlet-name>
<servlet-class>dbcm.esitoattivazionecessazione.servlet.GeneraFileEsitiServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>GeneraFileEsitiServlet</servlet-name>
<url-pattern>/GeneraFileEsitiServlet</url-pattern>
</servlet-mapping>
<servlet>
<description></description>
<display-name>CessazioniGFPServlet</display-name>
<servlet-name>CessazioniGFPServlet</servlet-name>
<servlet-class>dbcm.esitoattivazionecessazione.servlet.CessazioniGFPServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CessazioniGFPServlet</servlet-name>
<url-pattern>/CessazioniGFPServlet</url-pattern>
</servlet-mapping>
<servlet>
<description></description>
<display-name>CessazioniGFPServletFromFileName</display-name>
<servlet-name>CessazioniGFPServletFromFileName</servlet-name>
<servlet-class>dbcm.esitoattivazionecessazione.servlet.CessazioniGFPServletFromFileName</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CessazioniGFPServletFromFileName</servlet-name>
<url-pattern>/CessazioniGFPServletFromFileName</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<session-config>
<session-timeout>120</session-timeout>
</session-config>
</web-app>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd">
<wls:context-root>dbcm-web</wls:context-root>
</wls:weblogic-web-app>

View File

@@ -0,0 +1,186 @@
@font-face {
font-family: TIMSans;
src: url(timsans-bold.ttf);
}
.timfont{
font-family: 'TIMSans','Roboto',sans-serif;
font-weight: 700;
font-style: normal;
text-decoration: none;
height: 100%;
}
.p-timfont{
font-family: 'TIMSans','Roboto',sans-serif;
font-weight: 300;
font-style: normal;
font-size: 1.6rem;
line-height: 1.3em;
}
.header{
background-color:#0033a1;
display: flex;
width: 100%;
margin-top:15px;
padding: 15px 0 15px 0;
}
.header-logo{
margin-left:10px;
color:white;
font-size: 150%;
width: 15%;
display: flex;
}
.logo{
width: 40%;
}
.header-nav{
width: 80%;
text-align: right;
}
.header-title{
color:white;
}
.header-element{
margin-left:5%;
cursor: pointer;
}
.header-element:hover {
color: #dbf11e;
}
.genEsiti{
width: 40%;
display: inline-grid;
text-align: center;
}
.genCess{
width: 40%;
display: inline-grid;
text-align: center;
}
.button {
background-color:#4CAF50;
border: none;
color: white;
padding: 6px 10px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
margin: 4px 2px;
-webkit-transition-duration: 0.4s; /* Safari */
transition-duration: 0.4s;
cursor: pointer;
}
.button1 {
font-family: 'TIMSans','Roboto',sans-serif;
background-color: white;
text-transform: uppercase;
color: #0164f2;
border: 2px solid #0164f2;
}
.button1:hover {
background-color: #c1d6f5b8;
}
.backgroundImage{
background: linear-gradient(rgba(255,255,255,.8), rgba(255,255,255,.8)), url("timlogo.png");
background-repeat: no-repeat;
background-attachment: fixed;
background-position: center;
background-size: 15%;
}
.container{
height: 100%;
display: flex;
margin-top: 3%;
margin-left: 10%;
text-align: center;
}
.container-rectangle {
width: 35%;
}
.continer-border{
height: 90%;
border: 2px solid #0033a1;
padding-bottom: 5px;
}
.container-rectangle-info{
margin-top:5%;
}
.container-info{
height: 150px;
}
.container-title{
font-size: 1.6em;
}
.container-subtitle{
margin-left: 40px;
margin-right: 40px;
}
.container-footer{
margin-bottom: 2%;
}
.container-footer-2{
margin-bottom: 2%;
margin-top:8%;
}
.container-esito{
margin-top:8%;
}
.subtitle{
font-size: 0.9em;
font-family: sans-serif;
}
.left-space {
margin-left: 18%;
}
.generic-font{
font-family: Arial, Helvetica, sans-serif;
}
.icon{
vertical-align: middle;
width: 8%;
}
.white{
color:white;
}
.text-sub-container{
margin-bottom: 3%;
}
.input-info{
margin: 1%;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 763 B

Some files were not shown because too many files have changed in this diff Show More