PorteApplicativeDumpConfigurazione.java

  1. /*
  2.  * GovWay - A customizable API Gateway
  3.  * https://govway.org
  4.  *
  5.  * Copyright (c) 2005-2025 Link.it srl (https://link.it).
  6.  *
  7.  * This program is free software: you can redistribute it and/or modify
  8.  * it under the terms of the GNU General Public License version 3, as published by
  9.  * the Free Software Foundation.
  10.  *
  11.  * This program is distributed in the hope that it will be useful,
  12.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14.  * GNU General Public License for more details.
  15.  *
  16.  * You should have received a copy of the GNU General Public License
  17.  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  18.  *
  19.  */
  20. package org.openspcoop2.web.ctrlstat.servlet.pa;

  21. import java.text.MessageFormat;
  22. import java.util.List;
  23. import java.util.ArrayList;

  24. import javax.servlet.http.HttpServletRequest;
  25. import javax.servlet.http.HttpServletResponse;
  26. import javax.servlet.http.HttpSession;

  27. import org.apache.commons.lang.StringUtils;
  28. import org.apache.struts.action.Action;
  29. import org.apache.struts.action.ActionForm;
  30. import org.apache.struts.action.ActionForward;
  31. import org.apache.struts.action.ActionMapping;
  32. import org.openspcoop2.core.config.DumpConfigurazione;
  33. import org.openspcoop2.core.config.DumpConfigurazioneRegola;
  34. import org.openspcoop2.core.config.PortaApplicativa;
  35. import org.openspcoop2.core.config.constants.StatoFunzionalita;
  36. import org.openspcoop2.web.ctrlstat.core.ControlStationCore;
  37. import org.openspcoop2.web.ctrlstat.costanti.CostantiControlStation;
  38. import org.openspcoop2.web.ctrlstat.servlet.GeneralHelper;
  39. import org.openspcoop2.web.ctrlstat.servlet.soggetti.SoggettiCore;
  40. import org.openspcoop2.web.lib.mvc.Costanti;
  41. import org.openspcoop2.web.lib.mvc.DataElement;
  42. import org.openspcoop2.web.lib.mvc.ForwardParams;
  43. import org.openspcoop2.web.lib.mvc.GeneralData;
  44. import org.openspcoop2.web.lib.mvc.MessageType;
  45. import org.openspcoop2.web.lib.mvc.PageData;
  46. import org.openspcoop2.web.lib.mvc.Parameter;
  47. import org.openspcoop2.web.lib.mvc.ServletUtils;
  48. import org.openspcoop2.web.lib.mvc.TipoOperazione;

  49. /**
  50.  * ConfigurazioneDumpConfigurazione
  51.  *
  52.  * @author Andrea Poli (apoli@link.it)
  53.  * @author Giuliano Pintori (pintori@link.it)
  54.  * @author $Author$
  55.  * @version $Rev$, $Date$
  56.  *
  57.  */
  58. public class PorteApplicativeDumpConfigurazione extends Action {

  59.     @Override
  60.     public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

  61.         TipoOperazione tipoOperazione = TipoOperazione.OTHER;

  62.         HttpSession session = request.getSession(true);

  63.         // Inizializzo PageData
  64.         PageData pd = new PageData();

  65.         GeneralHelper generalHelper = new GeneralHelper(session);

  66.         // Inizializzo GeneralData
  67.         GeneralData gd = generalHelper.initGeneralData(request);

  68.         String userLogin = ServletUtils.getUserLoginFromSession(session);  

  69.         try {

  70.             PorteApplicativeHelper porteApplicativeHelper = new PorteApplicativeHelper(request, pd, session);
  71.             // prelevo il flag che mi dice da quale pagina ho acceduto la sezione delle porte applicative
  72.             Integer parentPA = ServletUtils.getIntegerAttributeFromSession(PorteApplicativeCostanti.ATTRIBUTO_PORTE_APPLICATIVE_PARENT, session, request);
  73.             if(parentPA == null) parentPA = PorteApplicativeCostanti.ATTRIBUTO_PORTE_APPLICATIVE_PARENT_NONE;
  74.            
  75.             String id = porteApplicativeHelper.getParameter(PorteApplicativeCostanti.PARAMETRO_PORTE_APPLICATIVE_ID);
  76.             int idInt = Integer.parseInt(id);
  77.             String idsogg = porteApplicativeHelper.getParameter(PorteApplicativeCostanti.PARAMETRO_PORTE_APPLICATIVE_ID_SOGGETTO);
  78.             String idAsps = porteApplicativeHelper.getParameter(PorteApplicativeCostanti.PARAMETRO_PORTE_APPLICATIVE_ID_ASPS);
  79.             if(idAsps == null)
  80.                 idAsps = "";

  81.             // Preparo il menu
  82.             porteApplicativeHelper.makeMenu();

  83.             PorteApplicativeCore porteApplicativeCore = new PorteApplicativeCore();
  84.             SoggettiCore soggettiCore = new SoggettiCore(porteApplicativeCore);

  85.             boolean showStato = true;
  86.             String statoDump = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_STATO);
  87.             boolean showRealtime = porteApplicativeCore.isDumpShowConfigurazioneDumpRealtime();
  88.             String realtime = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_REALTIME);
  89.             String statoDumpRichiesta = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_STATO);
  90.             String statoDumpRisposta = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_STATO);
  91.            
  92.             String dumpRichiestaIngressoHeader = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_INGRESSO_HEADERS);
  93.             String dumpRichiestaIngressoPayload = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_INGRESSO_PAYLOAD);
  94.             String dumpRichiestaIngressoPayloadParsing = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_INGRESSO_PAYLOAD_PARSING);
  95.             String dumpRichiestaIngressoBody = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_INGRESSO_BODY);
  96.             String dumpRichiestaIngressoAttachments = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_INGRESSO_ATTACHMENTS);
  97.            
  98.             String dumpRichiestaUscitaHeader = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_USCITA_HEADERS);
  99.             String dumpRichiestaUscitaPayload = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_USCITA_PAYLOAD);
  100.             String dumpRichiestaUscitaPayloadParsing = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_USCITA_PAYLOAD_PARSING);
  101.             String dumpRichiestaUscitaBody = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_USCITA_BODY);
  102.             String dumpRichiestaUscitaAttachments = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_USCITA_ATTACHMENTS);
  103.            
  104.             String dumpRispostaIngressoHeader = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_INGRESSO_HEADERS);
  105.             String dumpRispostaIngressoPayload = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_INGRESSO_PAYLOAD);
  106.             String dumpRispostaIngressoPayloadParsing = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_INGRESSO_PAYLOAD_PARSING);
  107.             String dumpRispostaIngressoBody = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_INGRESSO_BODY);
  108.             String dumpRispostaIngressoAttachments = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_INGRESSO_ATTACHMENTS);
  109.            
  110.             String dumpRispostaUscitaHeader = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_USCITA_HEADERS);
  111.             String dumpRispostaUscitaPayload = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_USCITA_PAYLOAD);
  112.             String dumpRispostaUscitaPayloadParsing = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_USCITA_PAYLOAD_PARSING);
  113.             String dumpRispostaUscitaBody = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_USCITA_BODY);
  114.             String dumpRispostaUscitaAttachments = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_USCITA_ATTACHMENTS);
  115.            
  116.             String actionConferma = porteApplicativeHelper.getParameter(Costanti.PARAMETRO_ACTION_CONFIRM);
  117.            
  118.             String idTab = porteApplicativeHelper.getParameter(CostantiControlStation.PARAMETRO_ID_TAB);
  119.             if(!porteApplicativeHelper.isModalitaCompleta() && StringUtils.isNotEmpty(idTab)) {
  120.                 ServletUtils.setObjectIntoSession(request, session, idTab, CostantiControlStation.PARAMETRO_ID_TAB);
  121.             }

  122.             PortaApplicativa pa = porteApplicativeCore.getPortaApplicativa(idInt);
  123.             String idporta = pa.getNome();
  124.             String protocollo = soggettiCore.getProtocolloAssociatoTipoSoggetto(pa.getTipoSoggettoProprietario());

  125.             DumpConfigurazione oldConfigurazione = pa.getDump();
  126.            
  127.             boolean initConfigurazione = false;
  128.             String postBackElementName = porteApplicativeHelper.getPostBackElementName();
  129.             if(postBackElementName != null ){
  130.                 if(postBackElementName.equalsIgnoreCase(CostantiControlStation.PARAMETRO_DUMP_STATO)){
  131.                     initConfigurazione = true;
  132.                 }
  133.                
  134.                 if(postBackElementName.equals(CostantiControlStation.PARAMETRO_DUMP_RICHIESTA_STATO)) {
  135.                     if(!porteApplicativeHelper.isDumpConfigurazioneAbilitato(oldConfigurazione, false) && statoDumpRichiesta.equals(StatoFunzionalita.ABILITATO.getValue())) {
  136.                        
  137.                         if(org.openspcoop2.protocol.engine.constants.Costanti.TRASPARENTE_PROTOCOL_NAME.equals(protocollo)) {
  138.                             dumpRichiestaIngressoHeader = StatoFunzionalita.ABILITATO.getValue();  
  139.                             dumpRichiestaIngressoPayload = StatoFunzionalita.ABILITATO.getValue();
  140.                             dumpRichiestaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  141.                             dumpRichiestaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  142.                             dumpRichiestaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  143.                            
  144.                             dumpRichiestaUscitaHeader = StatoFunzionalita.DISABILITATO.getValue();  
  145.                             dumpRichiestaUscitaPayload = StatoFunzionalita.DISABILITATO.getValue();
  146.                             dumpRichiestaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  147.                             dumpRichiestaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  148.                             dumpRichiestaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  149.                         }
  150.                         else {
  151.                             dumpRichiestaIngressoHeader = StatoFunzionalita.DISABILITATO.getValue();    
  152.                             dumpRichiestaIngressoPayload = StatoFunzionalita.DISABILITATO.getValue();
  153.                             dumpRichiestaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  154.                             dumpRichiestaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  155.                             dumpRichiestaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  156.                            
  157.                             dumpRichiestaUscitaHeader = StatoFunzionalita.ABILITATO.getValue();
  158.                             dumpRichiestaUscitaPayload = StatoFunzionalita.ABILITATO.getValue();
  159.                             dumpRichiestaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  160.                             dumpRichiestaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  161.                             dumpRichiestaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  162.                         }
  163.                     }
  164.                 }
  165.                
  166.                 if(postBackElementName.equals(CostantiControlStation.PARAMETRO_DUMP_RISPOSTA_STATO)) {
  167.                     if(!porteApplicativeHelper.isDumpConfigurazioneAbilitato(oldConfigurazione, true) && statoDumpRisposta.equals(StatoFunzionalita.ABILITATO.getValue())) {
  168.                        
  169.                         if(org.openspcoop2.protocol.engine.constants.Costanti.TRASPARENTE_PROTOCOL_NAME.equals(protocollo)) {
  170.                             dumpRispostaIngressoHeader = StatoFunzionalita.DISABILITATO.getValue();
  171.                             dumpRispostaIngressoPayload = StatoFunzionalita.DISABILITATO.getValue();
  172.                             dumpRispostaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  173.                             dumpRispostaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  174.                             dumpRispostaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  175.                            
  176.                             dumpRispostaUscitaHeader = StatoFunzionalita.ABILITATO.getValue();  
  177.                             dumpRispostaUscitaPayload = StatoFunzionalita.ABILITATO.getValue();
  178.                             dumpRispostaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  179.                             dumpRispostaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  180.                             dumpRispostaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  181.                         }
  182.                         else {
  183.                             dumpRispostaIngressoHeader = StatoFunzionalita.ABILITATO.getValue();    
  184.                             dumpRispostaIngressoPayload = StatoFunzionalita.ABILITATO.getValue();
  185.                             dumpRispostaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  186.                             dumpRispostaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  187.                             dumpRispostaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  188.                            
  189.                             dumpRispostaUscitaHeader = StatoFunzionalita.DISABILITATO.getValue();  
  190.                             dumpRispostaUscitaPayload = StatoFunzionalita.DISABILITATO.getValue();
  191.                             dumpRispostaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  192.                             dumpRispostaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  193.                             dumpRispostaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  194.                         }
  195.                     }
  196.                 }
  197.             }

  198.             List<Parameter> lstParam = porteApplicativeHelper.getTitoloPA(parentPA, idsogg, idAsps);

  199.             String labelPerPorta = null;
  200.             if(parentPA!=null && (parentPA.intValue() == PorteApplicativeCostanti.ATTRIBUTO_PORTE_APPLICATIVE_PARENT_CONFIGURAZIONE)) {
  201.                 labelPerPorta = porteApplicativeCore.getLabelRegolaMappingErogazionePortaApplicativa(
  202.                         PorteApplicativeCostanti.LABEL_PARAMETRO_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE_CONFIG_DI,
  203.                         PorteApplicativeCostanti.LABEL_PARAMETRO_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE,
  204.                         pa);
  205.             }
  206.             else {
  207.                 labelPerPorta = PorteApplicativeCostanti.LABEL_PARAMETRO_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE_CONFIG_DI+idporta;
  208.             }

  209.             lstParam.add(new Parameter(labelPerPorta,  null));
  210.            
  211.             // imposta menu' contestuale
  212.             porteApplicativeHelper.impostaComandiMenuContestualePA(idsogg, idAsps);

  213.             // edit in progress
  214.             if (porteApplicativeHelper.isEditModeInProgress()) {
  215.                 ServletUtils.setPageDataTitle(pd, lstParam);

  216.                 if(statoDump == null) {
  217.                     if(oldConfigurazione == null) {
  218.                         statoDump = CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_DEFAULT;
  219.                     } else {
  220.                         statoDump = CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_RIDEFINITO;
  221.                         realtime = oldConfigurazione.getRealtime().getValue();
  222.                         statoDumpRichiesta = porteApplicativeHelper.isDumpConfigurazioneAbilitato(oldConfigurazione, false) ? StatoFunzionalita.ABILITATO.getValue() : StatoFunzionalita.DISABILITATO.getValue();
  223.                         statoDumpRisposta = porteApplicativeHelper.isDumpConfigurazioneAbilitato(oldConfigurazione, true) ? StatoFunzionalita.ABILITATO.getValue() : StatoFunzionalita.DISABILITATO.getValue();
  224.                        
  225.                         dumpRichiestaIngressoHeader = oldConfigurazione.getRichiestaIngresso().getHeadersRawEnumValue();    
  226.                         dumpRichiestaIngressoPayload = oldConfigurazione.getRichiestaIngresso().getPayloadRawEnumValue();
  227.                         dumpRichiestaIngressoPayloadParsing = oldConfigurazione.getRichiestaIngresso().getPayloadParsingRawEnumValue();
  228.                         dumpRichiestaIngressoBody = oldConfigurazione.getRichiestaIngresso().getBodyRawEnumValue();
  229.                         dumpRichiestaIngressoAttachments = oldConfigurazione.getRichiestaIngresso().getAttachmentsRawEnumValue();
  230.                        
  231.                         dumpRichiestaUscitaHeader = oldConfigurazione.getRichiestaUscita().getHeadersRawEnumValue();    
  232.                         dumpRichiestaUscitaPayload = oldConfigurazione.getRichiestaUscita().getPayloadRawEnumValue();
  233.                         dumpRichiestaUscitaPayloadParsing = oldConfigurazione.getRichiestaUscita().getPayloadParsingRawEnumValue();
  234.                         dumpRichiestaUscitaBody = oldConfigurazione.getRichiestaUscita().getBodyRawEnumValue();
  235.                         dumpRichiestaUscitaAttachments = oldConfigurazione.getRichiestaUscita().getAttachmentsRawEnumValue();
  236.                        
  237.                         dumpRispostaIngressoHeader = oldConfigurazione.getRispostaIngresso().getHeadersRawEnumValue();  
  238.                         dumpRispostaIngressoPayload = oldConfigurazione.getRispostaIngresso().getPayloadRawEnumValue();
  239.                         dumpRispostaIngressoPayloadParsing = oldConfigurazione.getRispostaIngresso().getPayloadParsingRawEnumValue();
  240.                         dumpRispostaIngressoBody = oldConfigurazione.getRispostaIngresso().getBodyRawEnumValue();
  241.                         dumpRispostaIngressoAttachments = oldConfigurazione.getRispostaIngresso().getAttachmentsRawEnumValue();
  242.                        
  243.                         dumpRispostaUscitaHeader = oldConfigurazione.getRispostaUscita().getHeadersRawEnumValue();  
  244.                         dumpRispostaUscitaPayload = oldConfigurazione.getRispostaUscita().getPayloadRawEnumValue();
  245.                         dumpRispostaUscitaPayloadParsing = oldConfigurazione.getRispostaUscita().getPayloadParsingRawEnumValue();
  246.                         dumpRispostaUscitaBody = oldConfigurazione.getRispostaUscita().getBodyRawEnumValue();
  247.                         dumpRispostaUscitaAttachments = oldConfigurazione.getRispostaUscita().getAttachmentsRawEnumValue();
  248.                     }
  249.                 }
  250.                
  251.                 if(initConfigurazione) {
  252.                     if(statoDump.equals(CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_RIDEFINITO)) {
  253.                         oldConfigurazione = new DumpConfigurazione();
  254.                         oldConfigurazione.setRichiestaIngresso(new DumpConfigurazioneRegola());
  255.                         oldConfigurazione.setRichiestaUscita(new DumpConfigurazioneRegola());
  256.                         oldConfigurazione.setRispostaIngresso(new DumpConfigurazioneRegola());
  257.                         oldConfigurazione.setRispostaUscita(new DumpConfigurazioneRegola());
  258.                        
  259.                         realtime = oldConfigurazione.getRealtime().getValue();
  260.                         statoDumpRichiesta = porteApplicativeHelper.isDumpConfigurazioneAbilitato(oldConfigurazione, false) ? StatoFunzionalita.ABILITATO.getValue() : StatoFunzionalita.DISABILITATO.getValue();
  261.                         statoDumpRisposta = porteApplicativeHelper.isDumpConfigurazioneAbilitato(oldConfigurazione, true) ? StatoFunzionalita.ABILITATO.getValue() : StatoFunzionalita.DISABILITATO.getValue();
  262.                        
  263.                         if(org.openspcoop2.protocol.engine.constants.Costanti.TRASPARENTE_PROTOCOL_NAME.equals(protocollo)) {
  264.                             dumpRichiestaIngressoHeader = StatoFunzionalita.ABILITATO.getValue();  
  265.                             dumpRichiestaIngressoPayload = StatoFunzionalita.ABILITATO.getValue();
  266.                             dumpRichiestaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  267.                             dumpRichiestaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  268.                             dumpRichiestaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  269.                            
  270.                             dumpRichiestaUscitaHeader = StatoFunzionalita.DISABILITATO.getValue();  
  271.                             dumpRichiestaUscitaPayload = StatoFunzionalita.DISABILITATO.getValue();
  272.                             dumpRichiestaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  273.                             dumpRichiestaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  274.                             dumpRichiestaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  275.                            
  276.                             dumpRispostaIngressoHeader = StatoFunzionalita.DISABILITATO.getValue();
  277.                             dumpRispostaIngressoPayload = StatoFunzionalita.DISABILITATO.getValue();
  278.                             dumpRispostaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  279.                             dumpRispostaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  280.                             dumpRispostaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  281.                            
  282.                             dumpRispostaUscitaHeader = StatoFunzionalita.ABILITATO.getValue();  
  283.                             dumpRispostaUscitaPayload = StatoFunzionalita.ABILITATO.getValue();
  284.                             dumpRispostaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  285.                             dumpRispostaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  286.                             dumpRispostaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  287.                         }
  288.                         else {
  289.                        
  290.                             dumpRichiestaIngressoHeader = StatoFunzionalita.DISABILITATO.getValue();    
  291.                             dumpRichiestaIngressoPayload = StatoFunzionalita.DISABILITATO.getValue();
  292.                             dumpRichiestaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  293.                             dumpRichiestaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  294.                             dumpRichiestaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  295.                            
  296.                             dumpRichiestaUscitaHeader = StatoFunzionalita.ABILITATO.getValue();
  297.                             dumpRichiestaUscitaPayload = StatoFunzionalita.ABILITATO.getValue();
  298.                             dumpRichiestaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  299.                             dumpRichiestaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  300.                             dumpRichiestaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  301.                            
  302.                             dumpRispostaIngressoHeader = StatoFunzionalita.ABILITATO.getValue();    
  303.                             dumpRispostaIngressoPayload = StatoFunzionalita.ABILITATO.getValue();
  304.                             dumpRispostaIngressoPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  305.                             dumpRispostaIngressoBody = StatoFunzionalita.DISABILITATO.getValue();
  306.                             dumpRispostaIngressoAttachments = StatoFunzionalita.DISABILITATO.getValue();
  307.                            
  308.                             dumpRispostaUscitaHeader = StatoFunzionalita.DISABILITATO.getValue();  
  309.                             dumpRispostaUscitaPayload = StatoFunzionalita.DISABILITATO.getValue();
  310.                             dumpRispostaUscitaPayloadParsing = StatoFunzionalita.DISABILITATO.getValue();
  311.                             dumpRispostaUscitaBody = StatoFunzionalita.DISABILITATO.getValue();
  312.                             dumpRispostaUscitaAttachments = StatoFunzionalita.DISABILITATO.getValue();
  313.                         }
  314.                     }
  315.                 }

  316.                 // preparo i campi
  317.                 List<DataElement> dati = new ArrayList<>();
  318.                 dati.add(ServletUtils.getDataElementForEditModeFinished());

  319.                 porteApplicativeHelper.addConfigurazioneDumpToDati(tipoOperazione, dati, showStato, statoDump, showRealtime, realtime, statoDumpRichiesta, statoDumpRisposta,
  320.                         dumpRichiestaIngressoHeader, dumpRichiestaIngressoPayload, dumpRichiestaIngressoPayloadParsing, dumpRichiestaIngressoBody, dumpRichiestaIngressoAttachments,
  321.                         dumpRichiestaUscitaHeader, dumpRichiestaUscitaPayload, dumpRichiestaUscitaPayloadParsing, dumpRichiestaUscitaBody, dumpRichiestaUscitaAttachments,
  322.                         dumpRispostaIngressoHeader, dumpRispostaIngressoPayload, dumpRispostaIngressoPayloadParsing, dumpRispostaIngressoBody, dumpRispostaIngressoAttachments,
  323.                         dumpRispostaUscitaHeader, dumpRispostaUscitaPayload, dumpRispostaUscitaPayloadParsing, dumpRispostaUscitaBody, dumpRispostaUscitaAttachments,
  324.                         true);
  325.                
  326.                 dati = porteApplicativeHelper.addHiddenFieldsToDati(TipoOperazione.OTHER,id, idsogg, null, idAsps, dati);

  327.                 pd.setDati(dati);

  328.                 ServletUtils.setGeneralAndPageDataIntoSession(request, session, gd, pd);

  329.                 return ServletUtils.getStrutsForwardEditModeInProgress(mapping, PorteApplicativeCostanti.OBJECT_NAME_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE, ForwardParams.OTHER(""));
  330.             }

  331.             // Controlli sui campi immessi
  332.             boolean isOk = porteApplicativeHelper.checkDataConfigurazioneDump(tipoOperazione, showStato, statoDump, showRealtime, realtime, statoDumpRichiesta, statoDumpRisposta,
  333.                     dumpRichiestaIngressoHeader, dumpRichiestaIngressoPayload, dumpRichiestaIngressoPayloadParsing, dumpRichiestaIngressoBody, dumpRichiestaIngressoAttachments,
  334.                     dumpRichiestaUscitaHeader, dumpRichiestaUscitaPayload, dumpRichiestaUscitaPayloadParsing, dumpRichiestaUscitaBody, dumpRichiestaUscitaAttachments,
  335.                     dumpRispostaIngressoHeader, dumpRispostaIngressoPayload, dumpRispostaIngressoPayloadParsing, dumpRispostaIngressoBody, dumpRispostaIngressoAttachments,
  336.                     dumpRispostaUscitaHeader, dumpRispostaUscitaPayload, dumpRispostaUscitaPayloadParsing, dumpRispostaUscitaBody, dumpRispostaUscitaAttachments);
  337.             if (!isOk) {

  338.                 ServletUtils.setPageDataTitle(pd, lstParam);

  339.                 // preparo i campi
  340.                 List<DataElement> dati = new ArrayList<>();
  341.                 dati.add(ServletUtils.getDataElementForEditModeFinished());

  342.                 porteApplicativeHelper.addConfigurazioneDumpToDati(tipoOperazione, dati, showStato, statoDump, showRealtime, realtime, statoDumpRichiesta, statoDumpRisposta,
  343.                         dumpRichiestaIngressoHeader, dumpRichiestaIngressoPayload, dumpRichiestaIngressoPayloadParsing, dumpRichiestaIngressoBody, dumpRichiestaIngressoAttachments,
  344.                         dumpRichiestaUscitaHeader, dumpRichiestaUscitaPayload, dumpRichiestaUscitaPayloadParsing, dumpRichiestaUscitaBody, dumpRichiestaUscitaAttachments,
  345.                         dumpRispostaIngressoHeader, dumpRispostaIngressoPayload, dumpRispostaIngressoPayloadParsing, dumpRispostaIngressoBody, dumpRispostaIngressoAttachments,
  346.                         dumpRispostaUscitaHeader, dumpRispostaUscitaPayload, dumpRispostaUscitaPayloadParsing, dumpRispostaUscitaBody, dumpRispostaUscitaAttachments,
  347.                         true);
  348.                
  349.                 dati = porteApplicativeHelper.addHiddenFieldsToDati(TipoOperazione.OTHER,id, idsogg, null, idAsps, dati);

  350.                 pd.setDati(dati);

  351.                 ServletUtils.setGeneralAndPageDataIntoSession(request, session, gd, pd);

  352.                 return ServletUtils.getStrutsForwardEditModeCheckError(mapping, PorteApplicativeCostanti.OBJECT_NAME_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE, ForwardParams.OTHER(""));
  353.             }
  354.            
  355.             boolean showConfermaRichiesta = false;
  356.             boolean showConfermaRisposta = false;
  357.             if(statoDump.equals(CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_RIDEFINITO)) {
  358.                 // se ho abilitato entrambi i dump di ingresso e uscita per richiesta o risposta informo l'utente che lo spazio occupato sara' il doppio
  359.                 if(statoDumpRichiesta.equals(StatoFunzionalita.ABILITATO.getValue())) {
  360.                    
  361.                     boolean bodyIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaIngressoPayload);
  362.                     boolean attachmentsIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaIngressoPayload);
  363.                     if(StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaIngressoPayloadParsing)) {
  364.                         bodyIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaIngressoBody);
  365.                         attachmentsIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaIngressoAttachments);
  366.                     }
  367.                     boolean bodyUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaUscitaPayload);
  368.                     boolean attachmentsUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaUscitaPayload);
  369.                     if(StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaUscitaPayloadParsing)) {
  370.                         bodyUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaUscitaBody);
  371.                         attachmentsUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRichiestaUscitaAttachments);
  372.                     }
  373.                    
  374.                     // doppio body
  375.                     if(bodyIngresso && bodyUscita) {
  376.                         showConfermaRichiesta = true;
  377.                     }
  378.                    
  379.                     // doppi attachments
  380.                     if(attachmentsIngresso && attachmentsUscita) {
  381.                         showConfermaRichiesta = true;
  382.                     }
  383.                 }
  384.                
  385.                 // se ho abilitato entrambi i dump di ingresso e uscita per richiesta o risposta informo l'utente che lo spazio occupato sara' il doppio
  386.                 if(statoDumpRisposta.equals(StatoFunzionalita.ABILITATO.getValue())) {
  387.                    
  388.                     boolean bodyIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaIngressoPayload);
  389.                     boolean attachmentsIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaIngressoPayload);
  390.                     if(StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaIngressoPayloadParsing)) {
  391.                         bodyIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaIngressoBody);
  392.                         attachmentsIngresso = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaIngressoAttachments);
  393.                     }
  394.                     boolean bodyUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaUscitaPayload);
  395.                     boolean attachmentsUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaUscitaPayload);
  396.                     if(StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaUscitaPayloadParsing)) {
  397.                         bodyUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaUscitaBody);
  398.                         attachmentsUscita = StatoFunzionalita.ABILITATO.getValue().equals(dumpRispostaUscitaAttachments);
  399.                     }
  400.                    
  401.                     // doppio body
  402.                     if(bodyIngresso && bodyUscita) {
  403.                         showConfermaRisposta = true;
  404.                     }
  405.                    
  406.                     // doppi attachments
  407.                     if(attachmentsIngresso && attachmentsUscita) {
  408.                         showConfermaRisposta = true;
  409.                     }
  410.                 }
  411.             }
  412.                
  413.             if(statoDump.equals(CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_RIDEFINITO)) {
  414.                 if(showConfermaRichiesta  || showConfermaRisposta) {
  415.                     if(actionConferma == null) {
  416.                        
  417.                         ServletUtils.setPageDataTitle(pd, lstParam);
  418.    
  419.                         // preparo i campi
  420.                         List<DataElement> dati = new ArrayList<>();
  421.                         dati.add(ServletUtils.getDataElementForEditModeFinished());
  422.                        
  423.                         porteApplicativeHelper.addConfigurazioneDumpToDati(tipoOperazione, dati, showStato, statoDump, showRealtime, realtime, statoDumpRichiesta, statoDumpRisposta,
  424.                                 dumpRichiestaIngressoHeader, dumpRichiestaIngressoPayload, dumpRichiestaIngressoPayloadParsing, dumpRichiestaIngressoBody, dumpRichiestaIngressoAttachments,
  425.                                 dumpRichiestaUscitaHeader, dumpRichiestaUscitaPayload, dumpRichiestaUscitaPayloadParsing, dumpRichiestaUscitaBody, dumpRichiestaUscitaAttachments,
  426.                                 dumpRispostaIngressoHeader, dumpRispostaIngressoPayload, dumpRispostaIngressoPayloadParsing, dumpRispostaIngressoBody, dumpRispostaIngressoAttachments,
  427.                                 dumpRispostaUscitaHeader, dumpRispostaUscitaPayload, dumpRispostaUscitaPayloadParsing, dumpRispostaUscitaBody, dumpRispostaUscitaAttachments,
  428.                                 true);
  429.                        
  430.                        
  431.                         porteApplicativeHelper.addConfigurazioneDumpToDatiAsHidden(tipoOperazione, dati, showStato, statoDump, showRealtime, realtime, statoDumpRichiesta, statoDumpRisposta,
  432.                                 dumpRichiestaIngressoHeader, dumpRichiestaIngressoPayload, dumpRichiestaIngressoPayloadParsing, dumpRichiestaIngressoBody, dumpRichiestaIngressoAttachments,
  433.                                 dumpRichiestaUscitaHeader, dumpRichiestaUscitaPayload, dumpRichiestaUscitaPayloadParsing, dumpRichiestaUscitaBody, dumpRichiestaUscitaAttachments,
  434.                                 dumpRispostaIngressoHeader, dumpRispostaIngressoPayload, dumpRispostaIngressoPayloadParsing, dumpRispostaIngressoBody, dumpRispostaIngressoAttachments,
  435.                                 dumpRispostaUscitaHeader, dumpRispostaUscitaPayload, dumpRispostaUscitaPayloadParsing, dumpRispostaUscitaBody, dumpRispostaUscitaAttachments,
  436.                                 true);
  437.                        
  438.                         dati = porteApplicativeHelper.addHiddenFieldsToDati(TipoOperazione.OTHER,id, idsogg, null, idAsps, dati);
  439.                        
  440.                         pd.setDati(dati);
  441.                        
  442.                        
  443.                         String msg ="";
  444.                         if(showConfermaRichiesta)
  445.                             msg = CostantiControlStation.LABEL_PARAMETRO_RICHIESTA;
  446.    
  447.                         if(showConfermaRichiesta && showConfermaRisposta)
  448.                             msg += " e ";
  449.                        
  450.                         if(showConfermaRisposta)
  451.                             msg = CostantiControlStation.LABEL_PARAMETRO_RISPOSTA;
  452.                        
  453.                         String messaggio =  MessageFormat.format(CostantiControlStation.MESSAGGIO_CONFERMA_REGISTRAZIONE_MESSAGGI_DOPPIO_SPAZIO, msg);
  454.                        
  455.                         pd.setMessage(messaggio, MessageType.CONFIRM);
  456.                        
  457.                         String[][] bottoni = {
  458.                                 { Costanti.LABEL_MONITOR_BUTTON_ANNULLA,
  459.                                     Costanti.LABEL_MONITOR_BUTTON_ANNULLA_CONFERMA_PREFIX +
  460.                                     Costanti.LABEL_MONITOR_BUTTON_ANNULLA_CONFERMA_SUFFIX
  461.                                    
  462.                                 },
  463.                                 { Costanti.LABEL_MONITOR_BUTTON_CONFERMA,
  464.                                     Costanti.LABEL_MONITOR_BUTTON_ESEGUI_OPERAZIONE_CONFERMA_PREFIX +
  465.                                     Costanti.LABEL_MONITOR_BUTTON_ESEGUI_OPERAZIONE_CONFERMA_SUFFIX }};
  466.    
  467.                         pd.setBottoni(bottoni);
  468.                        
  469.                         // disabilito la form
  470.                         pd.disableEditMode();
  471.    
  472.                         ServletUtils.setGeneralAndPageDataIntoSession(request, session, gd, pd);
  473.    
  474.                         return ServletUtils.getStrutsForwardEditModeInProgress(mapping, PorteApplicativeCostanti.OBJECT_NAME_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE, ForwardParams.OTHER(""));
  475.                     }
  476.                 }
  477.             }

  478.             if(statoDump.equals(CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_RIDEFINITO)) {
  479.                 // se ho confermato effettuo la modifica altrimenti torno direttamente alla lista
  480.                 if( !(showConfermaRichiesta  || showConfermaRisposta)
  481.                         ||
  482.                     (actionConferma != null && actionConferma.equals(Costanti.PARAMETRO_ACTION_CONFIRM_VALUE_OK))
  483.                         ) {
  484.                     DumpConfigurazione newDumpConfigurazione = porteApplicativeHelper.getConfigurazioneDump(tipoOperazione, showStato, statoDump, showRealtime, realtime,
  485.                             statoDumpRichiesta, statoDumpRisposta,
  486.                             dumpRichiestaIngressoHeader, dumpRichiestaIngressoPayload, dumpRichiestaIngressoPayloadParsing, dumpRichiestaIngressoBody, dumpRichiestaIngressoAttachments,
  487.                             dumpRichiestaUscitaHeader, dumpRichiestaUscitaPayload, dumpRichiestaUscitaPayloadParsing, dumpRichiestaUscitaBody, dumpRichiestaUscitaAttachments,
  488.                             dumpRispostaIngressoHeader, dumpRispostaIngressoPayload, dumpRispostaIngressoPayloadParsing, dumpRispostaIngressoBody, dumpRispostaIngressoAttachments,
  489.                             dumpRispostaUscitaHeader, dumpRispostaUscitaPayload, dumpRispostaUscitaPayloadParsing, dumpRispostaUscitaBody, dumpRispostaUscitaAttachments);
  490.                            
  491.                     pa.setDump(newDumpConfigurazione);

  492.                     porteApplicativeCore.performUpdateOperation(userLogin, porteApplicativeHelper.smista(), pa);
  493.                
  494.                     // Preparo la lista
  495.                     pd.setMessage(PorteApplicativeCostanti.LABEL_PORTE_APPLICATIVE_ARCHIVIO_MESSAGGI_CON_SUCCESSO, Costanti.MESSAGE_TYPE_INFO);
  496.                 }
  497.             } else {
  498.                 pa.setDump(null);

  499.                 porteApplicativeCore.performUpdateOperation(userLogin, porteApplicativeHelper.smista(), pa);
  500.                
  501.                 // Preparo la lista
  502.                 pd.setMessage(PorteApplicativeCostanti.LABEL_PORTE_APPLICATIVE_ARCHIVIO_MESSAGGI_CON_SUCCESSO, Costanti.MESSAGE_TYPE_INFO);

  503.             }
  504.                
  505.             pa = porteApplicativeCore.getPortaApplicativa(idInt);
  506.             idporta = pa.getNome();

  507.             ServletUtils.setPageDataTitle(pd, lstParam);

  508.             // preparo i campi
  509.             List<DataElement> dati = new ArrayList<>();
  510.             dati.add(ServletUtils.getDataElementForEditModeFinished());

  511.             // ricarico la configurazione
  512.            
  513.             DumpConfigurazione configurazioneAggiornata = pa.getDump();
  514.            
  515.             if(configurazioneAggiornata == null) {
  516.                 statoDump = CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_DEFAULT;
  517.             } else {
  518.                 statoDump = CostantiControlStation.VALUE_PARAMETRO_DUMP_STATO_RIDEFINITO;
  519.                 realtime = configurazioneAggiornata.getRealtime().getValue();
  520.                 statoDumpRichiesta = porteApplicativeHelper.isDumpConfigurazioneAbilitato(configurazioneAggiornata, false) ? StatoFunzionalita.ABILITATO.getValue() : StatoFunzionalita.DISABILITATO.getValue();
  521.                 statoDumpRisposta = porteApplicativeHelper.isDumpConfigurazioneAbilitato(configurazioneAggiornata, true) ? StatoFunzionalita.ABILITATO.getValue() : StatoFunzionalita.DISABILITATO.getValue();
  522.                
  523.                 dumpRichiestaIngressoHeader = configurazioneAggiornata.getRichiestaIngresso().getHeadersRawEnumValue();
  524.                 dumpRichiestaIngressoPayload = configurazioneAggiornata.getRichiestaIngresso().getPayloadRawEnumValue();
  525.                 dumpRichiestaIngressoPayloadParsing = configurazioneAggiornata.getRichiestaIngresso().getPayloadParsingRawEnumValue();
  526.                 dumpRichiestaIngressoBody = configurazioneAggiornata.getRichiestaIngresso().getBodyRawEnumValue();
  527.                 dumpRichiestaIngressoAttachments = configurazioneAggiornata.getRichiestaIngresso().getAttachmentsRawEnumValue();
  528.                
  529.                 dumpRichiestaUscitaHeader = configurazioneAggiornata.getRichiestaUscita().getHeadersRawEnumValue();
  530.                 dumpRichiestaUscitaPayload = configurazioneAggiornata.getRichiestaUscita().getPayloadRawEnumValue();
  531.                 dumpRichiestaUscitaPayloadParsing = configurazioneAggiornata.getRichiestaUscita().getPayloadParsingRawEnumValue();
  532.                 dumpRichiestaUscitaBody = configurazioneAggiornata.getRichiestaUscita().getBodyRawEnumValue();
  533.                 dumpRichiestaUscitaAttachments = configurazioneAggiornata.getRichiestaUscita().getAttachmentsRawEnumValue();
  534.                
  535.                 dumpRispostaIngressoHeader = configurazioneAggiornata.getRispostaIngresso().getHeadersRawEnumValue();  
  536.                 dumpRispostaIngressoPayload = configurazioneAggiornata.getRispostaIngresso().getPayloadRawEnumValue();
  537.                 dumpRispostaIngressoPayloadParsing = configurazioneAggiornata.getRispostaIngresso().getPayloadParsingRawEnumValue();
  538.                 dumpRispostaIngressoBody = configurazioneAggiornata.getRispostaIngresso().getBodyRawEnumValue();
  539.                 dumpRispostaIngressoAttachments = configurazioneAggiornata.getRispostaIngresso().getAttachmentsRawEnumValue();
  540.                
  541.                 dumpRispostaUscitaHeader = configurazioneAggiornata.getRispostaUscita().getHeadersRawEnumValue();  
  542.                 dumpRispostaUscitaPayload = configurazioneAggiornata.getRispostaUscita().getPayloadRawEnumValue();
  543.                 dumpRispostaUscitaPayloadParsing = configurazioneAggiornata.getRispostaUscita().getPayloadParsingRawEnumValue();
  544.                 dumpRispostaUscitaBody = configurazioneAggiornata.getRispostaUscita().getBodyRawEnumValue();
  545.                 dumpRispostaUscitaAttachments = configurazioneAggiornata.getRispostaUscita().getAttachmentsRawEnumValue();
  546.             }

  547.             porteApplicativeHelper.addConfigurazioneDumpToDati(tipoOperazione, dati, showStato, statoDump, showRealtime, realtime, statoDumpRichiesta, statoDumpRisposta,
  548.                     dumpRichiestaIngressoHeader, dumpRichiestaIngressoPayload, dumpRichiestaIngressoPayloadParsing, dumpRichiestaIngressoBody, dumpRichiestaIngressoAttachments,
  549.                     dumpRichiestaUscitaHeader, dumpRichiestaUscitaPayload, dumpRichiestaUscitaPayloadParsing, dumpRichiestaUscitaBody, dumpRichiestaUscitaAttachments,
  550.                     dumpRispostaIngressoHeader, dumpRispostaIngressoPayload, dumpRispostaIngressoPayloadParsing, dumpRispostaIngressoBody, dumpRispostaIngressoAttachments,
  551.                     dumpRispostaUscitaHeader, dumpRispostaUscitaPayload, dumpRispostaUscitaPayloadParsing, dumpRispostaUscitaBody, dumpRispostaUscitaAttachments,
  552.                     true);
  553.            
  554.             dati = porteApplicativeHelper.addHiddenFieldsToDati(TipoOperazione.OTHER,id, idsogg, null, idAsps, dati);

  555.             pd.setDati(dati);

  556.             ServletUtils.setGeneralAndPageDataIntoSession(request, session, gd, pd);

  557.             return ServletUtils.getStrutsForwardEditModeFinished(mapping, PorteApplicativeCostanti.OBJECT_NAME_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE, ForwardParams.OTHER(""));
  558.         } catch (Exception e) {
  559.             return ServletUtils.getStrutsForwardError(ControlStationCore.getLog(), e, pd, request, session, gd, mapping,
  560.                     PorteApplicativeCostanti.OBJECT_NAME_PORTE_APPLICATIVE_DUMP_CONFIGURAZIONE, ForwardParams.OTHER(""));
  561.         }
  562.     }

  563. }