Nodo HTTPRequest

Questo argomento contiene le seguenti sezioni:

Scopo

Utilizzare il nodo HTTPRequest per interagire con un servizio Web, utilizzando tutto o parte del messaggio di input come richiesta inviata a quel servizio. E' possibile anche configurare il nodo per creare un nuovo messaggio di output dal contenuto del messaggio di input a cui è stato aggiunto il contenuto della risposta del servizio web prima di trasmettere il messaggio ai nodi successivi nel flusso di messaggi.

A seconda della configurazione, questo nodo crea una richiesta HTTP o HTTPS (HTTP over SSL) dal contenuto specificato del messaggio di input e la invia al servizio Web. Esso riceve la risposta dal servizio Web e la analizza per includerla nella struttura ad albero di output. Genera intestazioni HTTP se queste sono richieste dalla propria configurazione.

E' possibile utilizzare questo nodo in un flusso di messaggi che non contiene un nodo HTTPInput o HTTPReply.

Il nodo HTTPRequest gestisce i messaggi nei seguenti domini di messaggi:

  • MRM
  • XML
  • XMLNS
  • XMLNSC
  • JMSMap
  • JMSStream
  • MIME
  • BLOB
  • IDOC

Il nodo HTTPRequest è rappresentato nel workbench dalla seguente icona:

Icona del nodo HTTPRequest

Utilizzo di questo nodo in un flusso di messaggi

Il nodo HTTPRequest può essere utilizzato da qualsiasi flusso di messaggi che debba inviare una richiesta HTTP. L'esempio più comune che illustra questa situazione è rappresentato da un flusso di messaggi che richiama un servizio Web. Per informazioni sulle applicazioni del servizio Web, consultare Applicazioni del servizio Web.

Gestione errori

Poiché il nodo interagisce direttamente con un servizio esterno utilizzando TCP/IP, può rilevare i seguenti tipi di errore:

  1. Gli errori generati da TCP/IP, ad esempio nessun instradamento all'host o connessione respinta.

    Se il nodo rileva questi errori, esso genera un'eccezione, popola l'elenco di eccezioni con le informazioni relative all'errore ricevute e instrada il messaggio di input immutato al terminale failure.

  2. Gli errori che sono restituiti dal server Web. Questi sono codici di stato HTTP che non rientrano nell'intervallo da 100 a 299. Quando rileva questi errori, il nodo instrada la replica al terminale error del nodo, mentre segue le proprietà specificate sulla scheda relativa agli errori nel nodo di richiesta.

    La replica sarà emessa come BLOB, poiché il nodo non può stabilire in quale formato sarà la suddetta replica. Se questo nodo non è stato configurato per gestire il reindirizzamento, anche i messaggi con un codice di stato di reindirizzamento (3xx) sono gestiti allo stesso modo.

Codici di risposta HTTP

Il nodo HTTPRequest tratta i codici di stato della serie 100 come una risposta continua, elimina la risposta corrente e attende un'altra risposta dal server Web.

I codici di stato della serie 200 vengono considerati come esito positivo e la risposta è instradata sul terminale out del nodo, mentre segue le impostazioni sulle varie schede nel nodo per il formato del messaggio di output generato.

I codici di stato della serie 300 riguardano il reindirizzamento. Se la proprietà Segui reindirizzamento è selezionata, il nodo non invia nuovamente la richiesta al nuovo indirizzo specificato nella risposta ricevuta. Se la proprietà Segui reindirizzamento non è selezionata, i codici sono considerati come errori come descritto nella sezione precedente sulla gestione degli errori.

I codici di stato della serie 400 e 500 sono errori e sono gestiti come descritto nella sezione precedente sulla gestione degli errori.

Manipolazione intestazioni

Se è selezionata la proprietà Sostituisci messaggio di input con la risposta del servizio Web o la proprietà Sostituisci il messaggio di input con l'errore, l'intestazione per il messaggio di input, cioè, l'intestazione che appartiene al messaggio quando arriva al terminale IN del nodo HTTPRequest, non è trasmessa con il messaggio in uscita dal nodo HTTPRequest. Tuttavia, se viene specificata una delle proprietà che indica un'ubicazione nella struttura ad albero del messaggio, le intestazioni del messaggio di input vengono trasmesse.

L'intestazione HTTPResponse, che contiene le intestazioni restituite dal servizio Web remoto, è la prima intestazione nel messaggio che viene trasmessa dal nodo, dopo le proprietà. Ciò è vero indipendentemente dalle opzioni selezionate. Quindi, se si desidera che la replica dal nodo HTTPRequest sia inserita in una coda MQ, è necessario manipolare le intestazioni in modo che MQMD sia la prima intestazione (dopo le proprietà).

Se si sta sostituendo il messaggio di input con una risposta, è possibile copiare l'MQMD del messaggio di input nella struttura ad albero Environment prima del nodo HTTPRequest e quindi ricopiarlo nella struttura ad albero del messaggio dopo il nodo HTTPRequest. Se si sta specificando un'ubicazione per la risposta, in modo da conservare le intestazioni del messaggio di input esistenti, è necessario spostare o rimuovere l'intestazione HTTP Response in modo che MQMD sia la prima intestazione.

Il seguente esempio contiene ESQL che rimuove HTTPHeader:
SET OutputRoot = InputRoot;
SET OutputRoot.HTTPResponseHeader = NULL; 
Il seguente esempio contiene ESQL per spostare HTTPHeader e quindi conservare le informazioni che essa fornisce:
SET OutputRoot = InputRoot;
DECLARE HTTPHeaderRef REFERENCE TO OutputRoot.HTTPResponseHeader;
DETACH HTTPHeaderRef;
ATTACH HTTPHeaderRef TO OutputRoot.MQMD AS NEXTSIBLING;

Abilitazione di HTTP GET

Per impostazione predefinita, il nodo HTTPRequest utilizza il metodo HTTP POST quando si connette al server Web remoto. Per abilitare il nodo di richiesta all'utilizzo del metodo HTTP GET invece, è necessario impostare un campo nella struttura ad albero relativa all'ambiente locale di output, come mostrato nel seguente esempio:
SET OutputLocalEnvironment.Destination.HTTP.RequestLine.Method = 'GET';

Configurazione del nodo HTTPRequest

Una volta inserita un'istanza del nodo HTTPRequest in un flusso di messaggi, è possibile configurarla. Fare clic con il tasto destro del mouse sul nodo nella vista dell'editor e fare clic su Proprietà. Vengono visualizzate le proprietà base del nodo.

Tutte le proprietà obbligatorie, per le quali è necessario immettere un valore (quelle per le quali non è specificato un valore predefinito), sono contrassegnate con un asterisco nella finestra di dialogo delle proprietà.

Configurare il nodo HTTPRequest come segue:

  1. Il nodo HTTPRequest stabilisce l'URL per il servizio Web a cui invia una richiesta. E' necessario impostare una delle seguenti tre opzioni; il nodo le controlla nell'ordine mostrato (cioè, la prima sovrascrive sempre la seconda, la seconda sovrascrive la terza):
    1. X-Original-HTTP-URL nell'intestazione HTTPRequest nel messaggio di input
    2. LocalEnvironment.Destination.HTTP.RequestURL nel messaggio di input
    3. La proprietà URL del servizio Web

    Le prime due opzioni forniscono metodi dinamici per impostare un URL per ogni messaggio di input quando passa attraverso il flusso di messaggi. Se si desidera utilizzare una o l'altra di queste opzioni, è necessario includere un nodo Compute nel flusso di messaggi prima del nodo HTTPRequest per creare e inizializzare il valore richiesto.

    La terza opzione fornisce un valore che è fisso per ogni messaggio ricevuto in questo nodo. E' necessario impostare questa proprietà in modo che contenga un'impostazione predefinita, utilizzata se gli altri campi non sono stati creati o contengono un valore null. Se un campo contiene un valore, l'impostazione di questa proprietà è ignorata. La proprietà URL del servizio Web deve contenere un URL valido o la distribuzione avrà esito negativo. E' necessario inoltre assicurare che anche il valore impostato in X-Original-HTTP-URL o LocalEnvironment.Destination.HTTP.RequestURL sia un URL valido; se non lo è, il nodo genera un'eccezione e il messaggio è trasmesso al terminale failure.

    Se un URL inizia con http:// il nodo di richiesta fa una richiesta HTTP all'URL specificato. Se l'URL inizia con https:// il nodo di richiesta fa una richiesta HTTPS (HTTP over SSL) all'URL specificato, utilizzando i parametri specificati sulla scheda SSL nel nodo.

  2. Impostare il valore Timeout di richiesta. Questo indica il periodo di tempo in cui il nodo attende una risposta dal servizio Web. Se viene ricevuta entro questo periodo di tempo, la risposta è trasmessa attraverso il terminale out al resto del flusso di messaggi. Se una risposta non viene ricevuta entro questo periodo di tempo, il messaggio di input è trasmesso al terminale failure, se è connesso. Se il terminale failure non è connesso e non si riceve una risposta entro questo periodo di tempo, si genera un'eccezione.
  3. In Ubicazione proxy HTTP(S), impostare l'ubicazione del server proxy al quale vengono inviate le richieste.
  4. Selezionare o deselezionare la casella di spunta Segui reindirizzamento HTTP(S) per specificare come il nodo gestisce le risposte del servizio web che contengono un codice di stato HTTP da 300 a 399:
    • Se si seleziona la casella di spunta, il nodo segue il reindirizzamento fornito nella risposta e inoltra di nuovo la richiesta del servizio web al nuovo URL incluso nel contenuto del messaggio.
    • Se si deseleziona la casella di spunta, il nodo non segue il reindirizzamento fornito. Il messaggio di risposta è trasmesso al terminale error.
  5. Selezionare Versione HTTP. I valori possibili per la proprietà Versione HTTP sono 1.0 e 1.1.

    Se si seleziona HTTP/1.1, si ha la possibilità di utilizzare anche keep-alive HTTP/1.1.

  6. Se si ha intenzione di utilizzare le richieste HTTPS (HTTP over SSL), selezionare la scheda SSL e impostare i valori per le richieste https.
    • Specificare il protocollo da utilizzare per effettuare la richiesta. Sono disponibili le seguenti opzioni:
      • SSL (valore predefinito). Questo tenta il collegamento utilizzando prima il protocollo SSLv3, ma consente il fall back dell'handshake al protocollo SSLv2 dove il protocollo SSLv2 è supportato dal provider JSSE sottostante.
      • SSLv3. Questo tenta il collegamento solo con il protocollo SSLv3. Il fall back a SSLv2 non è consentito.
      • TLS. Questo tenta il collegamento solo con il protocollo TLS. Il fall back a SSLv3 o SSLv2 non è consentito.

        Si noti che entrambe le estremità della connessione SSL devono utilizzare lo stesso protocollo, il protocollo scelto deve quindi essere un protocollo che il server remoto possa accettare.

    • Specificare Cipher SSL consentite. Questa impostazione consente di specificare una singola cipher (quale SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA) o un elenco di cipher che saranno le sole utilizzate per la connessione. Questa serie di cipher deve includere una o più cipher accettate dal server remoto. Viene utilizzata una virgola come separatore tra le cipher. L'impostazione predefinita (una stringa vuota) consente al nodo di utilizzare una qualsiasi cipher disponibile o tutte le cipher, durante l'handshake della connessione SSL, che offre la massima opportunità di effettuare una connessione SSL con esito positivo.
  7. Selezionare Avanzate nel Navigator della finestra di dialogo delle proprietà e impostare i valori per le proprietà Avanzate che descrivono la struttura e il contenuto della richiesta e della risposta del servizio Web.
    1. Specificare il contenuto del messaggio di richiesta inviato al servizio web:
      • Se si desidera che il messaggio di richiesta sia l'intero contenuto del messaggio di input, lasciare la casella di spunta Utilizza l'intero messaggio di input come richiesta selezionata (questa è l'impostazione predefinita).

        Se si desidera che il messaggio di richiesta contenga una serie secondaria del messaggio di input, deselezionare questa casella di spunta e compilare la proprietà Ubicazione del messaggio di richiesta nell'albero.

      • In Ubicazione del messaggio di richiesta nell'albero, immettere l'ubicazione di partenza da cui il contenuto dell'albero del messaggio di input viene copiato nel messaggio di richiesta. Questa proprietà è richiesta solo se è stata deselezionata la proprietà Utilizza l'intero messaggio di input come richiesta. Il nodo crea un nuovo messaggio di richiesta e copia le parti specificate del messaggio di input (il messaggio di input stesso non è modificato).

        E' possibile immettere qualsiasi riferimento di campo ESQL valido, comprese le espressioni contenute nel riferimento. Ad esempio, immettere:

        InputRoot.XMLNS.ABC

        Se si seleziona la casella di spunta Utilizza l'intero messaggio di input come richiesta, questa proprietà è ignorata.

      Quando il contenuto appropriato della struttura ad albero del messaggio viene analizzato per creare un flusso di bit, vengono utilizzate le proprietà del messaggio (dominio, serie, tipo e formato) associate al contenuto del messaggio di input e memorizzate nella cartella delle proprietà.

    2. Specificare il contenuto del messaggio di output che è trasmesso al nodo successivo nel flusso di messaggi:
      • Se si desidera che l'intero messaggio di risposta del servizio Web sia trasmesso come messaggio di output, lasciare la casella di spunta Sostituisci il messaggio di input con la risposta del servizio Web selezionata (questa è l'impostazione predefinita).

        Se si desidera che il messaggio di risposta del servizio web sia incluso nel messaggio di output con parte del contenuto del messaggio di input, deselezionare questa casella di spunta e compilare la proprietà Ubicazione del messaggio di risposta nell'albero. Se si deseleziona questa proprietà, il nodo copia il messaggio di input nel messaggio di output e scrive il messaggio di risposta del servizio web sul contenuto del messaggio di output nell'ubicazione specificata (il messaggio di input stesso non è modificato).

      • In Ubicazione del messaggio di risposta nell'albero, immettere l'ubicazione di partenza nella struttura ad albero del messaggio di output in cui sono memorizzati gli elementi analizzati provenienti dal flusso di bit del messaggio di risposta del servizio Web. Questa proprietà è richiesta solo se è stata deselezionata la proprietà Sostituisci il messaggio di input con la risposta al servizio Web.

        E' possibile immettere qualsiasi riferimento di campo ESQL valido, comprese le espressioni all'interno del riferimento e includendo nuovi riferimenti di campo (per creare un nuovo nodo nella struttura ad albero del messaggio per la risposta). Ad esempio, immettere:

        OutputRoot.XMLNS.ABC.DEF
        oppure
        Environment.WSReply

        Se si seleziona la casella di spunta Sostituisci il messaggio di input con la risposta al servizio Web, questa proprietà è ignorata.

      Quando il flusso di bit della risposta viene analizzato per creare il contenuto della struttura ad albero del messaggio, vengono utilizzate le proprietà del messaggio (dominio, serie, tipo e formato) specificate nelle proprietà Predefinite del nodo (descritte di seguito).

    3. Se si desidera che il nodo crei una HTTPRequestHeader per il messaggio di richiesta, lasciare la casella di spunta Crea intestazioni HTTP predefinite dall'input selezionata (questa è l'impostazione predefinita).

      Se non si desidera che il nodo crei una HTTPRequestHeader per il messaggio di richiesta, deselezionare la casella di spunta Crea intestazioni HTTP predefinite dall'input (è selezionata l'impostazione predefinita). Per controllare il contenuto della HTTPRequestHeader inserita nel messaggio di richiesta, includere un nodo Compute che aggiunge una HTTPRequestHeader al messaggio di input prima di questo nodo HTTPRequest nel flusso di messaggi e deselezionare questa casella di spunta.

      • Se è stata selezionata Crea intestazioni HTTP predefinite dall'input e il messaggio di input include una HTTPRequestHeader, il nodo estrae le intestazioni del servizio web dalla HTTPRequestHeader di input e aggiunge tutte le intestazioni univoche del servizio web, tranne Host (vedi tabella di seguito), presenti in una HTTPInputHeader, se ne esiste una nel messaggio di input. (Una HTTPInputHeader potrebbe essere presente se il messaggio di input proveniente da un servizio Web è stato ricevuto dal nodo HTTPInput.)

        Esso inoltre aggiunge le intestazioni del servizio Web riportate nella seguente tabella, con i valori predefiniti, se queste non sono presenti nella HTTPRequestHeader o nella HTTPInputHeader.

        Intestazione Valore predefinito
        SOAPAction "" (stringa vuota)
        Content-Type text/xml; charset=utf-8
        Host Il nome host a cui va inviata la richiesta

        Esso, inoltre, aggiunge l'intestazione facoltativa Content-Length con il valore calcolato corretto, anche se questo non è presente nella HTTPRequestHeader o HTTPInputHeader.

      • Se è stata selezionata Crea intestazioni HTTP predefinite dall'input e il messaggio di input non include una HTTPRequestHeader, il nodo estrae le intestazioni del servizio web, tranne Host, dalla HTTPInputHeader, se presente nel messaggio di input. Esso aggiunge le intestazioni del servizio web richieste con i valori predefiniti, se queste non sono presenti nella HTTPInputHeader.
      • Se è stata deselezionata Crea intestazioni HTTP predefinite dall'input e il messaggio di input include una HTTPRequestHeader, il nodo estrae le intestazioni del servizio web presenti nella HTTPRequestHeader di input. Esso non controlla se è presente HTTPInputHeader nel messaggio di input e non aggiunge le intestazioni del servizio Web richieste se queste non sono fornite dalla HTTPRequestHeader di input.
      • Se è stata deselezionata Crea intestazioni HTTP predefinite dall'input e il messaggio di input non include una HTTPRequestHeader, non viene creata alcuna intestazione del servizio web. Il nodo non controlla se è presente HTTPInputHeader nel messaggio di input e non aggiunge alcuna intestazione del servizio web richiesta. Il messaggio di richiesta è trasmesso al servizio Web senza HTTPRequestHeader. Questo, in genere, ha come risultato la creazione di un errore da parte del servizio Web, a meno che il servizio Web non sia configurato per gestire il contenuto del messaggio.
  8. Selezionare Errore nel Navigator della finestra di dialogo delle proprietà e impostare i valori per le proprietà che stabiliscono come viene gestito un messaggio di errore restituito dal servizio Web.
    • Se si desidera che l'intero messaggio di errore del servizio Web sia trasmesso come messaggio di output, lasciare la casella di spunta Sostituisci il messaggio di input con l'errore selezionata (questa è l'impostazione predefinita).

      Se si desidera che il messaggio di errore del servizio Web sia incluso nel messaggio di output con parte del contenuto del messaggio di input, deselezionare la casella di spunta e compilare la proprietà Ubicazione del messaggio di errore. Se si deseleziona questa proprietà, il nodo copia il messaggio di input nel messaggio di output e scrive il messaggio di errore del servizio Web sul contenuto del messaggio di output nell'ubicazione specificata (il messaggio di input stesso non è modificato).

    • In Ubicazione del messaggio di errore, immettere l'ubicazione di partenza all'interno della struttura ad albero del messaggio di output in cui sono memorizzati gli elementi analizzati provenienti dal flusso di bit del messaggio di errore del servizio Web. Questa proprietà è richiesta solo se è stata deselezionata la proprietà Sostituisci il messaggio di input con l'errore.

      E' possibile immettere qualsiasi riferimento di campo ESQL valido, comprese le espressioni all'interno del riferimento e i nuovi riferimenti di campo (per creare un nuovo nodo nella struttura ad albero del messaggio per la risposta). Ad esempio, immettere:

      OutputRoot.XMLNS.ABC.DEF
      oppure
      Environment.WSError

      Se si seleziona la casella di spunta Sostituisci il messaggio di input con l'errore, questa proprietà è ignorata.

  9. Selezionare Predefinite nel Navigator della finestra di dialogo delle proprietà e impostare i valori per le proprietà che descrivono il dominio dei messaggi, la serie di messaggi, il tipo di messaggio e il formato del messaggio che il nodo utilizza per stabilire come analizzare il messaggio di risposta restituito dal servizio web.

    Se viene restituito un messaggio di errore dal servizio web, i valori di queste proprietà sono ignorati e il messaggio viene analizzato dal programma di analisi BLOB.

    • In Dominio messaggi, selezionare il nome del programma di analisi che si sta utilizzando dall'elenco a discesa. E' possibile scegliere tra i seguenti nomi:
      • MRM
      • XML
      • XMLNS
      • XMLNSC
      • JMSMap
      • JMSStream
      • MIME
      • BLOB
      • IDOC
    • Se si sta utilizzando il programma di analisi MRM o IDOC, selezionare la serie di messaggi corretta dall'elenco a discesa in Serie di messaggi. Questo elenco è popolato con le serie di messaggi disponibili quando si seleziona MRM o IDOC come dominio.

      Lasciare il campo Serie di messaggi vuoto per i programmi di analisi XML, XMLNS, XMLNSC, JMS, MIME e BLOB.

    • Se si sta utilizzando il programma di analisi MRM, selezionare il messaggio corretto dall'elenco a discesa in Tipo messaggio. Questo elenco è popolato con i messaggi definiti nella serie di messaggi selezionata.

      Lasciare il campo Tipo messaggio vuoto per i programmi di analisi XML, XMLNS, XMLNSC, JMS, MIME, BLOB e IDOC.

    • Se si sta utilizzando il programma di analisi MRM o IDOC, selezionare il formato del messaggio dall'elenco a discesa in Formato del messaggio. Questo elenco include tutti i formati fisici definiti per questa serie di messaggi.

      Lasciare il campo Formato del messaggio vuoto per i programmi di analisi XML, XMLNS, XMLNSC, JMS, MIME e BLOB.

  10. Selezionare Convalida nel Navigator della finestra di dialogo delle proprietà se si desidera che il programma di analisi MRM convalidi il contenuto dei messaggi rispetto al dizionario generato dalla serie di messaggi. (Se un messaggio è trasmesso al terminale failure del nodo, non viene convalidato.)

    Per ulteriori dettagli fare riferimento a Convalida dei messaggi e Proprietà della convalida per i messaggi nel dominio MRM.

  11. Selezionare Opzioni generali messaggio nel Navigator della finestra di dialogo delle proprietà. Intervallo di analisi è, per impostazione predefinita, impostato su Su richiesta. Questo fa sì che la convalida venga ritardata fino al completamento dell'analisi parziale. Se si modifica in Immediata, l'analisi parziale viene sovrascritta e tutto il contenuto presente nel messaggio viene analizzato e convalidato, tranne i tipi complessi con una Composizione di Scelta o Messaggio, che non può essere risolta al momento. Se questa impostazione viene modificata in Completa, l'analisi parziale viene sovrascritta e tutto il contenuto del messaggio viene analizzato e convalidato; i tipi complessi con una Composizione di Scelta o Messaggio, che non possono essere risolti al momento, hanno come risultato un errore di convalida.
  12. Selezionare Descrizione nel Navigator della finestra di dialogo delle proprietà per immettere una descrizione breve, una descrizione completa o entrambe.
  13. Fare clic su Applica per effettuare le modifiche al nodo HTTPRequest senza chiudere la finestra di dialogo delle proprietà. Fare clic su OK per applicare le modifiche e chiudere la finestra di dialogo delle proprietà.

    Fare clic su Annulla per chiudere la finestra di dialogo ed eliminare tutte le modifiche apportate alle proprietà.

Connessione dei terminali di output ad un altro nodo

Connettere il terminale out, error o failure di questo nodo ad un altro nodo in questo flusso di messaggi per elaborare ulteriormente il messaggio, elaborare gli errori oinviare il messaggio ad una destinazione aggiuntiva. Se non si connette il terminale error, il messaggio è eliminato. Se non si connette il terminale failure, il broker fornisce l'elaborazione errori predefinita, descritta in Gestione degli errori nei flussi di messaggi.

Terminali e proprietà

I terminali del nodo HTTPRequest sono descritti nella seguente tabella.

Terminale Descrizione
In Il terminale di input che accetta un messaggio affinché venga elaborato dal nodo.
Failure Il terminale di output a cui è instradato il messaggio se viene rilevato un errore durante l'elaborazione nel nodo.
Out Il terminale di output a cui il messaggio è instradato se rappresenta l'avvenuto completamento della richiesta del servizio Web e se è richiesta ulteriore elaborazione all'interno di questo flusso di messaggi.
Error Il terminale di output per i messaggi che includono un codice di stato HTTP che non è compreso tra 200 e 299, compresi i codici di reindirizzamento (3xx) se la proprietà Segui reindirizzamento HTTP non è stata impostata.

Le seguenti tabelle descrivono le proprietà del nodo; la colonna con l'intestazione O indica se la proprietà è obbligatoria (contrassegnata con un asterisco nella finestra di dialogo delle proprietà, se è necessario immettere un valore quando non è specificato un valore predefinito), la colonna con l'intestazione C indica se la proprietà è configurabile (è possibile modificare il valore quando si aggiunge un flusso di messaggi a un file bar per distribuirlo).

Le proprietà base del nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
URL del servizio Web   URL per il servizio web. È necessario fornirlo nel formato http://<hostname>[:<port>]/[<path>] dove
  • http://<hostname> deve essere specificato
  • <port> torna al valore predefinito di 80. Se si specifica un valore, è necessario includere : prima del numero di porta
  • <path> torna al valore predefinito di /. Se si specifica un valore, è necessario includere / prima del percorso.
Timeout di richiesta No 120 Il tempo in secondi in cui il nodo attende una risposta dal servizio web. L'intervallo valido è compreso tra 1 e (231)-1. Non è possibile immettere un valore che rappresenti un valore di attesa illimitata.
Ubicazione proxy HTTP(S) No   Il server proxy al quale vengono inviate le richieste. Questo deve aver il formato hostname:port.
Segui reindirizzamento HTTP(S). No No Deselezionata Indica se sono seguiti i reindirizzamenti HTTP. Se si seleziona la casella di spunta, i reindirizzamenti sono seguiti. Se si deseleziona questa casella di spunta, i reindirizzamenti non sono seguiti.
Versione HTTP No 1.0 La versione HTTP da utilizzare per le richieste. I valori validi sono 1.0 e 1.1.
Abilita Keep-Alive HTTP/1.1 No Selezionata (se la versione HTTP è 1.1) Utilizzare Keep-Alive HTTP/1.1

Le proprietà SSL del nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Protocollo No SSL Il protocollo SSL da utilizzare quando si effettua una richiesta HTTPS.
Cipher SSL consentite No   Un elenco di cipher separate da virgola da utilizzare quando si effettua una richiesta SSL. Il valore predefinito di una stringa vuota indica l'utilizzo di tutte le cipher disponibili.

Le proprietà Avanzate del nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Utilizza l'intero messaggio di input come richiesta No No Selezionata Indica se l'intero contenuto del messaggio di input deve essere inviato al servizio Web. Se si seleziona questa casella di spunta, questa azione viene eseguita. Se si deseleziona questa casella di spunta, è necessario specificare Ubicazione del messaggio di richiesta nell'albero.
Ubicazione del messaggio di richiesta nell'albero No InputRoot L'ubicazione di partenza da cui è creato il flusso di bit per l'invio al servizio web. Questa proprietà assume il formato di un riferimento di campo ESQL.
Sostituisci il messaggio di input con la risposta del servizio Web No No Selezionata Indica se il messaggio di risposta del servizio web sostituisce la copia del messaggio di input come contenuto del messaggio di output creato. Se si seleziona questa casella di spunta, questa azione viene eseguita. Se si deseleziona questa casella di spunta, è necessario specificare Ubicazione del messaggio di risposta nell'albero.
Ubicazione del messaggio di risposta nell'albero No OutputRoot L'ubicazione di partenza in cui sono memorizzati gli elementi analizzati provenienti dal flusso di bit della risposta del servizio web. Questa proprietà assume il formato di un riferimento di campo ESQL.
Crea intestazioni HTTP predefinite dall'input No No Selezionata Indica se viene creata una HTTPRequestHeader. Se si seleziona questa casella di spunta, questa azione viene eseguita. Se si deseleziona questa casella di spunta, nel messaggio di input deve esistere una HTTPRequestHeader valida.

Le proprietà Errore del nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Sostituisci il messaggio di input con l'errore No No Selezionata Indica se il contenuto del messaggio di input debba essere sostituito dal contenuto del messaggio di errore. Se si seleziona questa casella di spunta, questa azione viene eseguita. Se si deseleziona questa casella di spunta, è necessario specificare Ubicazione del messaggio di errore.
Ubicazione del messaggio di errore No OutputRoot L'ubicazione di partenza in cui sono memorizzati gli elementi analizzati provenienti dal flusso di bit dell'errore del servizio web. Questa proprietà assume il formato di un riferimento di campo ESQL.

Le proprietà Predefinite del nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Dominio messaggi No No   Il dominio che sarà utilizzato per analizzare il messaggio di risposta ricevuto dal servizio web.
Serie di messaggi No No   Il nome o identificativo della serie di messaggi in cui è definito il messaggio di risposta.
Tipo messaggio No No   Il nome del messaggio di risposta.
Formato del messaggio No No   Il nome del formato fisico del messaggio di risposta.

Le proprietà Convalida del nodo HTTPRequest sono descritte nella seguente tabella.

Fare riferimento a Proprietà della convalida per i messaggi nel dominio MRM per una descrizione completa di queste proprietà.

Proprietà O C Valore predefinito Descrizione
Convalida No Nessuno Indica se viene effettuata la convalida. I valori validi sono Nessuno, Contenuto e valore, Contenuto ed Eredita.
Azione in caso di errore No No Eccezione Indica cosa accade se la convalida ha esito negativo. E' possibile impostare questa proprietà solo se si imposta Convalida su Contenuto o Contenuto e valore. I valori validi sono Traccia utente, Registrazione errori locale, Eccezione ed Elenco di eccezioni.
Includi tutti i vincoli valore No No Selezionata Questa proprietà non può essere modificata. L'azione predefinita, indicata dalla casella di spunta selezionata, è che i controlli del vincolo del valore base sono inclusi nella convalida Contenuto e valore.
Correzione No No Nessuno Questa proprietà non può essere modificata.

Le proprietà delle Opzioni generali messaggio per il nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Intervallo di analisi No No Su richiesta Questa proprietà consente di controllare quando viene analizzato un messaggio di input. I valori validi sono Su richiesta, Immediata e Completa.

Fare riferimento ad Analisi su richiesta per una descrizione completa di questa proprietà.

Utilizza programma di analisi compatto MQRFH2C per il dominino MQRFH2 No No Deselezionata Questa proprietà consente di controllare se viene utilizzato il programma di analisi compatto MQRFH2C, invece del programma di analisi MQRFH2, per le intestazioni MQRFH2.

Le proprietà delle Opzioni del programma di analisi XMLNSC per il nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Utilizza programma di analisi compatto XMLNSC per il dominio XMLNS No No Deselezionata Inizio modificaTale proprietà consente di controllare se il programma di analisi XMLNSC viene utilizzato per messaggi nel dominio XMLNSC. Se si imposta questa proprietà, i dati del messaggio verranno visualizzati in XMLNSC nei nodi collegati al terminal dell'output quando l'intestazione RFH2 di input o il dominio di proprietà predefinito è XMLNS.Fine modifica
Modalità di mantenimento contenuto misto No No Nessuno Questa proprietà controlla se il programma di analisi XMLNSC crea elementi nella struttura ad albero del messaggio quando rileva testo misto in un messaggio di input. I valori validi sono Nessuno e Tutti. La selezione del valore Tutti indica che gli elementi vengono creati per testo misto. La selezione del valore Nessuno indica che il testo misto viene ignorato e non viene creato alcun elemento.
Modalità di mantenimento commenti No No Nessuno Questa proprietà controlla se il programma di analisi XMLNSC crea elementi nella struttura ad albero del messaggio quando rileva commenti in un messaggio di input. I valori validi sono Nessuno e Tutti. La selezione del valore Tutti indica che vengono creati elementi per i commenti. La selezione del valore Nessuno indica che i commenti vengono ignorati e non viene creato alcun elemento.
Modalità di mantenimento delle istruzioni di elaborazione No No Nessuno Questa proprietà controlla se il programma di analisi XMLNSC crea elementi nella struttura ad albero del messaggio quando rileva istruzioni di elaborazione in un messaggio di input. I valori validi sono Nessuno e Tutti. La selezione del valore Tutti indica che vengono creati elementi per le istruzioni di elaborazione. La selezione del valore Nessuno indica che le istruzioni di elaborazione vengono ignorate e non viene creato alcun elemento.

Le proprietà Descrizione del nodo HTTPRequest sono descritte nella seguente tabella.

Proprietà O C Valore predefinito Descrizione
Descrizione breve No No   Una breve descrizione del nodo.
Descrizione completa No No   Testo che descrive lo scopo del nodo nel flusso di messaggi.
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ac04595_