SQL データベース例外を明示的に処理するためにメッセージ・マップで定義する Select 変換ごとに Failure 変換を構成することができます。デフォルトでは、Mapping ノードは、メッセージ・フロー内でその他のノードによって処理できるデータベース例外をスローします。
このタスクについて
デフォルトでは、Mapping ノードは、SOAPInput ノードが catch して、クライアントに返す SOAP 障害をビルドするために自動的に使用するデータベース例外をスローします。
このシナリオでは、オプションの Failure 変換を使用して、Select 変換データベース・トランザクションからスローされる可能性がある最初の SQL 例外を処理します。データベース例外の詳細と、失敗したアドレスの検索に使用される Name エレメントと Country エレメントが組み込まれた SOAPFault をビルドします。
Failure 変換にはネストされたマップがあります。このネストされたマップが、失敗を処理する方法を定義するためにメッセージ・アセンブリーの入力エレメントと出力エレメントを変換する場所になります。
手順
シナリオで Failure 変換を構成するには、以下のステップを実行します。
- 「Select」を右クリックして、を選択します。
以下の図は、Failure 変換を Select 変換に追加するためのパスの選択項目をグラフィカルに示しています。
Failure 変換が Select 変換に追加されます。
- メッセージ・アセンブリー・エレメント Name を Failure 変換に接続します。
以下の図は、Failure 変換に接続されたエレメント Name を示しています。
- メッセージ・アセンブリー・エレメント Country を Failure 変換に接続します。
以下の図は、Failure 変換に接続されたエレメント Country を示しています。
- Failure 変換を出力エレメント Fault に接続します。
- 「Failure」を選択します。
Failure 変換のネストされたマップが開きます。
- ネストされたマップ内の入力エレメントとメッセージ・アセンブリー出力エレメントの間の変換を定義します。以下のステップを実行します。
- Move 変換を使用して、メッセージ・アセンブリー本文セクション Fault で入力エレメント Name を出力エレメント Name に接続します。
- Move 変換を使用して、メッセージ・アセンブリー本文セクション Fault で入力エレメント Country を出力エレメント Country に接続します。
- Move 変換を使用して、メッセージ・アセンブリー本文セクション Fault でデータベース例外エレメント Message を出力エレメント value に接続します。
- Move 変換の「プロパティー」タブでデータベース・エレメント Message のカーディナリティー索引を 1 に設定します。
以下の図は、エレメント CITY の Move 変換の「プロパティー」タブを示しています。