Show Menu
ARGOMENTI×

Proxy del servizio moduli HTML5

Il proxy di servizio moduli HTML5 è una configurazione per registrare un proxy per il servizio di invio. Per configurare il proxy di servizio, specificate l'URL del servizio di invio tramite il parametro di richiesta submitServiceProxy .

Vantaggi del proxy di servizio

Il proxy di servizio elimina quanto segue:
  • Il flusso di lavoro dei moduli HTML5 richiede l’apertura del servizio di invio "/content/xfaforms/submit/default" per gli utenti dei moduli HTML5. Consente di esporre i server AEM a un pubblico più vasto e non intenzionale.
  • L'URL del servizio è incorporato nel modello runtime del modulo. Non è possibile modificare il percorso dell'URL del servizio.
  • L'invio è un processo in due fasi. Per inviare i dati del modulo, l'invio richiede almeno due viaggi al server. Aumenta quindi il carico sul server.
  • I moduli HTML5 inviano i dati nella richiesta POST invece che nella richiesta PDF. Per i flussi di lavoro che coinvolgono moduli PDF e HTML5, sono necessari due metodi diversi per elaborare gli invii.

Topologie

I moduli HTML5 possono utilizzare le seguenti topologie per connettersi ai server AEM.
  • Topologia in cui i moduli AEM Server o HTML5 inviano dati tramite POST al server.
  • Topologia in cui il server proxy invia i dati POST al server.
Topologie proxy del servizio moduli HTML5
I moduli HTML5 si connettono ai server AEM per eseguire script sul lato server, servizi Web e invii. Il runtime XFA dei moduli HTML5 utilizza chiamate Ajax al punto finale "/bin/xfaforms/submitaction" con vari parametri per la connessione ai server AEM. I moduli HTML5 collegano i server AEM per eseguire le operazioni seguenti:

Esecuzione di script sul lato server e servizi Web

Gli script contrassegnati per l'esecuzione sul server sono noti come script sul lato server. Nella tabella seguente sono elencati tutti i parametri utilizzati negli script sul lato server e nei servizi Web.
Parametro
Descrizione
activity
L'attività contiene gli eventi che attivano la richiesta. Ad esempio clic, uscita o modifica
contextSom
contextSom contiene l'espressione SOM dell'oggetto in cui vengono eseguiti gli eventi.
Modello
Il modello contiene il modello utilizzato per eseguire il rendering del modulo.
contentRoot
contentRoot contiene la directory principale del modello utilizzata per eseguire il rendering del modulo.
Dati
I dati contengono byte di dati utilizzati per il rendering del modulo.
formDom
formDom contiene il DOM del modulo HTML5 in formato JSON.
packet
è specificato come modulo.
debugDir
debugDir contiene la directory di debug utilizzata per eseguire il rendering del modulo.

Invia dati

Facendo clic sul pulsante di invio, i moduli HTML5 inviano i dati al server. Nella tabella seguente sono elencati tutti i parametri che i moduli HTML5 inviano al server.
Parametro
Descrizione
Modello
Modello utilizzato per eseguire il rendering del modulo.
contentRoot
directory principale del modello utilizzata per eseguire il rendering del modulo.
Dati
byte di dati utilizzati per il rendering del modulo.
formDom
DOM del modulo HTML5 in formato JSON.
submiturl
L'URL in cui viene inviato l'XML dei dati.
debugDir
La directory di debug utilizzata per eseguire il rendering del modulo.

Come funziona il proxy di invio?

Il proxy del servizio di invio funge da pass-through se l’URL di invio non è presente nel parametro della richiesta. Agisce come un passaggio. Invia la richiesta al punto finale /bin/xfaforms/submitaction e invia la risposta al runtime XFA.
Il proxy del servizio di invio seleziona una topologia se l’URL di invio è presente nel parametro della richiesta.
  • Se i server AEM inviano i dati, il servizio proxy funge da pass-through. Invia la richiesta al punto finale /bin/xfaforms/submitaction e invia la risposta al runtime XFA.
  • Se il proxy pubblica i dati, il servizio proxy trasmette tutti i parametri eccetto submitUrl al punto finale /bin/xfaforms/submitaction e riceve i byte xml nel flusso di risposte. Quindi, il servizio proxy invia i byte del codice xml dei dati a submitUrl per l'elaborazione.
  • Prima di inviare i dati (richiesta POST) a un server, i moduli HTML5 verificano la connettività e la disponibilità del server. Per verificare la connettività e la disponibilità, i moduli HTML inviano al server una richiesta head vuota. Se il server è disponibile, il modulo HTML5 invia dati (richiesta POST) al server. Se il server non è disponibile, viene visualizzato un messaggio di errore Impossibile connettersi al server, Il rilevamento anticipato impedisce agli utenti di compilare il modulo in modo semplice. Il servlet proxy gestisce la richiesta dell'intestazione e non genera eccezioni.