例外後のツリー内容

例外が発生すると、メッセージ・ツリーの内容は更新されます。

メッセージの処理中に例外が発生しない場合には、個々のノードが受信するツリー構造および内容は、フロー内の直前のノードのアクションによって決定されます。

メッセージ・フロー内で例外が発生した場合には、4 つのツリーの内容は、以下の要因に依存しています。

メッセージ・フロー内の例外処理パス

例外処理パスは、failure ターミナル (ほとんどのメッセージ処理ノードはこれを持っている)、入力ノードの catch ターミナル、TryCatch ノード、または AggregateReply ノードで開始します。しかし、基本的には、通常のメッセージ・フロー・パスと何も変わりません。 そのようなフローは、メッセージ・フローの設計者によって接続されたノードのシーケンスで構成されます。 例外処理パスは、記録したりそれに対して反応したりする処理の種類において、異なります。 たとえば、それらは例外リストを調べて、エラーの性質を判断したり、 適切な処置を行ったり、メッセージまたは例外からのデータを記録したりするかもしれません。

例外処理メッセージ・フロー・パスに伝搬される LocalEnvironment およびメッセージ・ツリーは、 例外パスの開始時のものであって、例外のスロー時のものではありません。 下記の図は、この点を例示しています。


TryCatch ノードとそれに続く Compute1 および Compute2 を組み込んだメッセージ・フローの抜粋が示されています。 メッセージ・ツリーおよびローカル環境ツリーの状態は、 これらのノードとの間のコネクター上で示されており、 変化が生じていることを示しています。 そのことは、続く部分で説明されています。

関連概念
メッセージ・ツリー
Environment ツリー
LocalEnvironment ツリー
ExceptionList ツリー
メッセージのモデル化

関連タスク
メッセージ・フロー・アプリケーションの開発
ExceptionList ツリーへのアクセス
例外の送出

関連資料
組み込みノード
AggregateReply ノード
Compute ノード
TryCatch ノード