Struttura ad albero dell'elenco di eccezioni
La struttura ad albero dell'elenco di eccezioni è una parte della struttura ad albero logica (assemblaggio del messaggio) in cui il flusso di messaggi scrive le informazioni sulle eccezioni che si verificano quando un messaggio viene elaborato.
La root della struttura ad albero dell'elenco di eccezioni è chiamata ExceptionList ed è composta da una serie di zero o più descrizioni di eccezioni. La struttura ad albero dell'elenco di eccezioni viene popolata dal flusso di messaggi se si verifica un'eccezione. Se non si verificano condizioni di eccezione durante l'elaborazione del flusso di messaggi, l'elenco di eccezioni associato a quel messaggio consiste solo in un elemento root. Questo è, in effetti, un elenco di eccezioni vuoto.
Alla struttura ad albero dell'elenco di eccezioni si può accedere da altri nodi del flusso di messaggi che ricevono il messaggio dopo che si è verificata l'eccezione. È possibile modificare il contenuto della struttura ad albero dell'elenco di eccezioni solo in un nodo che fornisce un'interfaccia per modificare la struttura ad albero del messaggio in uscita; ad esempio, il nodo Compute .
Se si verifica una condizione di errore, l'elaborazione del messaggio è sospesa e si genera un'eccezione. Il controllo viene trasmesso a un livello più alto; cioè, un blocco catch di inclusione. Viene creato un elenco di eccezioni per descrivere la condizione di errore e l'intero messaggio, insieme alla struttura ad albero dell'ambiente locale e all'elenco di eccezioni appena popolato, viene trasmesso attraverso un percorso del flusso di messaggi per la gestione delle eccezioni.
- FatalException
- RecoverableException
- ConfigurationException
- SecurityException
- ParserException
- ConversionException
- DatabaseException
- UserException
- CastException
- MessageException
- SqlException
- SocketException
- SocketTimeoutException
- UnknownException
La figura seguente mostra la struttura ad albero dell'elenco di eccezioni per un'eccezione che è possibile ripristinare:

La struttura di descrizione delle eccezioni può essere sia ripetuta che nidificata per produrre una struttura ad albero dell'elenco di eccezioni. In questa struttura:
- La profondità (cioè, il numero di fasi parent-child dalla root) rappresenta informazioni sempre più dettagliate per la stessa eccezione.
- L'ampiezza della struttura ad albero rappresenta il numero di condizioni di eccezione separate che si sono verificate prima che fosse abbandonata l'elaborazione. Questo numero è in genere uno e ha come risultato una struttura ad albero dell'elenco di eccezioni composta da alcune descrizioni dell'eccezione connesse come rispettivi elementi child.
- Nei punti numerati nella struttura ad albero:
- Questo child può essere uno qualsiasi dei tipi di eccezione elencati in precedenza in questo argomento. Tutti questi elementi hanno i child indicati; se presente, l'ultimo child è lo stesso elemento del proprio parent.
- Questo elemento potrebbe essere ripetuto.
- Se presente, questo child contiene gli stessi child del proprio parent.
I child nella struttura ad albero sono organizzati in un certo numero di elementi nome-valore che forniscono dettagli sull'eccezione e zero o più elementi nome il cui nome è Inserimento. Il numero di messaggio NLS (National Language Support) indicato in un elemento nome-valore identifica un messaggio di errore dell' IBM® App Connect Enterprise. I valori Inserimento sono utilizzati per sostituire le variabili all'interno di questo messaggio e forniscono ulteriori dettagli sulla causa dell'eccezione.
Gli elementi nome-valore presenti nell'elenco di eccezioni illustrato nella figura precedente sono descritti nella seguente tabella.
| Nome | Tipo | Descrizione | |
|---|---|---|---|
| File1 | Stringa | Nome file di origine C++ | |
| Riga1 | Numero intero | Numero riga file di origine C++ | |
| Funzione1 | Stringa | Nome funzione di origine C++ | |
| Tipo2 | Stringa | Tipo oggetto di origine | |
| Nome2 | Stringa | Nome oggetto di origine | |
| Etichetta2 | Stringa | Etichetta oggetto di origine | |
| Testo1 | Stringa | Testo non NLS facoltativo | |
| Catalogo3 | Stringa | Nome catalogo messaggi NLS4 | |
| Severità3 | Numero intero | 1 = informazioni
2 = avvertenza 3 = errore |
|
| Numero3 | Numero intero | Numero messaggio NLS4 | |
| Inserimento3 | Tipo | Numero intero | Il tipo di dati del valore: 0 = Sconosciuto
1 = booleano 2 = Numero intero 3 = Virgola mobile 4 = Decimale 5 = Carattere 6 = Ora 7 = Ora GMT 8 = Data 9 = Data / ora 10 = Data / ora GMT 11 = Intervallo 12 = BLOB 13 = Matrice a bit 14 = Puntatore |
| Testo | Stringa | Il valore di dati | |
- Non utilizzare gli elementi File, Riga, Funzione e Testo per prendere decisioni sulla gestione delle eccezioni. Questi elementi garantiscono che le informazioni possano essere scritte in un log per essere utilizzate dal personale dell'assistenza IBM e sono soggette a modifiche sia nel contenuto che nell'ordine.
- Gli elementi Tipo, Nome ed Etichetta definiscono l'oggetto (in genere un nodo del flusso di messaggi) che stava elaborando il messaggio quando si è verificata la condizione di errore.
- Gli elementi Catalogo, Severità e Numero definiscono un messaggio NLS: gli elementi Inserimento che contengono i due elementi nome-valore mostrati definiscono gli inserimenti in quel messaggio NLS.
- Il nome del catalogo messaggi NLS e il numero del messaggio NLS fanno riferimento a un catalogo messaggi e a un numero messaggio traducibili.
Quando l'elaborazione del flusso di messaggi è completa, la struttura ad albero dell'elenco di eccezioni viene eliminata.