Nuova funzionalità di Trasformazione dei Messaggi
Aggiunta la funzionalità di trasformazione dei messaggi in transito. È possibile intervenire sugli header http, sui parametri della url, sui contenuti scambiati e sul codice di risposta, tramite varie modalità di trasformazione:
Header HTTP: è possibile aggiungere nuovi header oppure modificare o eliminare quelli esistenti sia sulla richiesta che sulla risposta. I valori forniti possono essere statici o possono contenere parti dinamiche risolte a runtime dal Gateway.
Parametri della URL: è possibile aggiungere nuovi parametri oppure modificare o eliminare quelli esistenti. I valori forniti possono essere statici o possono contenere parti dinamiche risolte a runtime.
Payload HTTP: la funzionalità consente di modificare il payload della richiesta e/o della risposta. È possibile indicare la generazione di un payload vuoto o fornire un nuovo payload definito tramite una delle seguenti modalità:
GovWay Template: file contenente parti dinamiche risolte a runtime in maniera analoga agli header http e ai parametri della url.
Freemarker Template: template dinamico che può utilizzare i costrutti supportati da “Freemarker” ( https://freemarker.apache.org/ ).
Velocity Template: template dinamico che può utilizzare i costrutti supportati da “Velocity” ( http://velocity.apache.org/ ).
XSLT: fogli di stile XSLT utilizzabili su messaggi di tipo XML o SOAP.
Trasformazione di Protocollo: è possibile effettuare trasformazioni di protocollo da SOAP a REST o viceversa, permettendo anche di fruire o erogare lo stesso servizio in entrambe le modalità.
Le regole di trasformazione sono soggette ai seguenti criteri di applicabilità:
Elenco Risorse: indicazione puntuale di una o più risorse a cui la trasformazione deve essere applicata.
Elenco Soggetti e/o Applicativi: indicazione puntuale di uno o più soggetti e/o applicativi mittenti.
Content-Type: indicazione del Content-Type della richiesta.
Espressione XPath o JsonPath: espressione applicata sul messaggio di richiesta. La trasformazione viene applicata in caso di match.
All’interno di una regola di trasformazione, è possibile poi applicare trasformazioni diverse della risposta ottenuta in funzione di:
Codice Risposta: codice di risposta http.
Content-Type: indicazione sul Content-Type della risposta.
Espressione XPath o JsonPath: espressione applicata sul messaggio di risposta. La trasformazione viene applicata in caso di match.