Struttura ad albero LocalEnvironment

La struttura ad albero LocalEnvironment fa parte della struttura ad albero del messaggio logica in cui è possibile memorizzare le informazioni mentre il flusso di messaggi elabora il messaggio.

La root della struttura ad albero LocalEnvironment è chiamata LocalEnvironment. Questa struttura ad albero è sempre presente nel messaggio di input: una struttura ad albero LocalEnvironment vuota viene creata quando il nodo di input riceve un messaggio.

Utilizzare la struttura ad albero LocalEnvironment per memorizzare le variabili a cui è possibile fare riferimento e che possono essere aggiornate dai nodi di elaborazione del messaggio presenti successivamente nel flusso di messaggi. E' possibile anche utilizzare la struttura ad albero LocalEnvironment per definire le destinazioni (che sono interne ed esterne al flusso di messaggi) a cui è inviato un messaggio. WebSphere Message Broker memorizza inoltre le informazioni in LocalEnvironment in alcune circostanze e fa riferimento ad esso per accedere ai valori che potrebbero essere stati impostati per le destinazioni. (Confrontare con la Struttura ad albero Environment, a cui il broker fa riferimento solo in una situazione.)

La figura di seguito mostra la struttura ad albero LocalEnvironment. I child di Destination dipendono dal protocollo. L'esempio di seguito mostra la struttura di un messaggio WebSphere MQ. Se il messaggio è analizzato da un altro programma di analisi integrato o da un programma di analisi definito dall'utente, la struttura ad albero sotto l'elemento Destination ha un contenuto differente rispetto a quello mostrato nella figura.


La struttura ad albero Local environment creata da un nodo di input e programma di analisi forniti

Nella struttura ad albero mostrata sopra, LocalEnvironment ha tre child:

Variables
Questa struttura ad albero secondaria è facoltativa. Se si creano variabili relative all'ambiente locale, si consiglia di memorizzarle in una struttura ad albero secondaria chiamata Variables. Essa fornisce un'area di lavoro che è possibile utilizzare per trasmettere le informazioni tra i nodi. Questa struttura ad albero secondaria non viene mai controllata o modificata da alcun nodo fornito.

Le variabili nell'ambiente locale possono essere modificate da qualsiasi nodo di elaborazione del messaggio successivo e persistono fino a che il flusso di messaggi esce dall'ambito e il nodo che lo ha creato ha completato l'operazione e restituisce il controllo al nodo precedente

Le variabili in questa struttura ad albero secondaria sono permanenti solo all'interno di una singola istanza di un flusso di messaggi. Se si dispone di più istanze di un messaggio che attraversano il flusso di messaggi ed è necessario trasmettere informazioni da una all'altra, si deve utilizzare un database esterno.

Destination
Questa struttura ad albero secondaria consiste in un numero di child che indicano i tipi di trasporto a cui è diretto il messaggio (gli identificativi del trasporto) o i nodi Label di destinazione che sono utilizzati da un nodo RouteToLabel.
  • Informazioni relative al trasporto

    Le informazioni relative al trasporto sono utilizzate da alcuni nodi di input e di output.

    Se il flusso di messaggi inizia con un nodo HTTPInput, un elemento nome HTTP singolo viene aggiunto a Destination. L'elemento HTTP.RequestIdentifier viene creato ed inizializzato in modo che possa essere utilizzato da un nodo HTTPReply. E' possibile anche creare altri campi nella struttura HTTP per l'utilizzo da parte del nodo HTTPRequest, ad esempio l'URL del servizio a cui viene inviata la richiesta. L'argomento per ogni nodo che contiene più informazioni sul contenuto di Destination per il protocollo WebSphere MQ Web Services Transport.

    Se il flusso di messaggi include un nodo MQOutput, ogni elemento è un elemento nome singolo, MQDestinationList. Se esiste più di un elemento, ognuno di essi è elaborato dal nodo in ordine sequenziale.

    Se è stato incluso un nodo di output definito dall'utente nel flusso di messaggi, il contenuto di Destination (se supportato) è definito da quel nodo.

    E' possibile configurare i nodi di output per esaminare l'elenco delle destinazioni e inviare il messaggio a quelle destinazioni, impostando la proprietà Modalità destinazione su Elenco di destinazioni. Se si procede in questo modo, è necessario creare questa struttura ad albero secondaria e il relativo contenuto per definire quelle destinazioni, dandogli il nome Destination. Se non si procede in questo modo, il nodo di output non può consegnare i messaggi.

    Se si preferisce, è possibile configurare il nodo di output per inviare i messaggi ad un'unica destinazione fissa, impostando la proprietà Modalità destinazione su Nome coda o Coda di risposta a. Se si seleziona una di queste opzioni fisse, l'elenco di destinazioni non ha effetti sulle operazioni del broker e non è necessario creare questa struttura ad albero secondaria.

    E' possibile creare l'elemento MQ per contenere un singolo elemento Defaults facoltativo. L'elemento Defaults, se creato, deve essere il primo child e contenere una serie di elementi nome-valore che forniscono valori predefiniti per la destinazione del messaggio e le relative opzioni PUT per quel parent.

    E' possibile anche creare un numero di elementi chiamati DestinationData all'interno di MQ. Ciascuno di questi può essere impostato con una serie di elementi nome-valore che definisce la destinazione di un messaggio e le relative opzioni PUT.

    La serie di elementi che definisce una destinazione è descritta in Tipi di dati per elementi nell'albero secondario DestinationData.

    Il contenuto di ogni istanza di DestinationData è lo stesso contenuto di Defaults per ogni protocollo e può essere utilizzato per sovrascrivere i valori predefiniti in Defaults. E' possibile impostare Defaults per contenere valori comuni a tutte le destinazioni e impostare solo i valori univoci in ciascuna struttura ad albero secondaria DestinationData. Se non si imposta un valore in DestinationData o Defaults, viene utilizzato il valore impostato per la proprietà del nodo corrispondente. Allo stesso modo, se si specifica un nome o un valore campo scritto in modo errato o con il maiuscolo/minuscolo sbagliati, viene ignorato e viene utilizzato il valore impostato per la proprietà del nodo corrispondente.

    Le informazioni inserite in DestinationData dipendono dalle caratteristiche della proprietà del nodo corrispondente: ciò viene descritto in Accesso alla struttura ad albero LocalEnvironment.

  • Informazioni relative all'instradamento

    Il child di Destination è RouterList. Esso ha un elemento child singolo chiamato DestinationData, che ha un'unica voce chiamata labelName. Se si sta utilizzando uno scenario di instradamento dinamico che coinvolge i nodi RouteToLabel e Label, è necessario impostare la struttura ad albero secondaria Destination con un child RouterList che contiene le etichette di riferimento.

WrittenDestination
Questa struttura ad albero secondaria contiene gli indirizzi ai quali è stato scritto il messaggio. Il suo nome è fisso. Viene creata dal flusso di messaggi quando il messaggio viene trasmesso attraverso il terminale out di un nodo di output. Essa include informazioni specifiche per il trasporto (ad esempio, se il messaggio di output è stato inserito in una coda WebSphere MQ, essa include il gestore code e i nomi coda). Se il terminale out del nodo di output non è connesso ad un altro nodo, questa struttura ad albero secondaria non viene creata.

L'argomento relativo a ogni nodo di output contiene ulteriori informazioni sul contenuto di WrittenDestination per WebSphere MQ e WebSphere MQ Everyplace.

Quando l'elaborazione del flusso di messaggi è completata, la struttura ad albero LocalEnvironment viene eliminata.

L'Esempio Prenotazioni per compagnie aeree e l'Esempio Instradamento del messaggio dimostrano come utilizzare LocalEnvironment per instradare i messaggi in modo dinamico in base all'elenco di destinazioni. L'esempio Estensione definita dall'utente utilizza LocalEnvironment per memorizzare informazioni successivamente aggiunte al messaggio di output creato dal flusso di messaggi.

Concetti correlati
Creazione di modelli di messaggio
Struttura ad albero Environment
Attività correlate
Sviluppo di flussi di messaggi
Creazione di elenchi di destinazioni
Accesso alla struttura ad albero LocalEnvironment
Utilizzo di aree blocco appunti in LocalEnvironment
Scrittura di ESQL
Scrittura Java
Riferimenti correlati
Nodo HTTPReply
Nodo HTTPRequest
Nodo MQeOutput
Nodo MQOutput
Tipi di dati per elementi nell'albero secondario DestinationData
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ac00520_