例外の追加

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  マッピングのデザイン >

例外の追加

例外は、フィルターにより返された条件が発生すると、マッピングの処理を停止し、エラーを表示する特別なコンポーネントの型です。 true/false 条件をチェックするフィルターをマッピングが含む場合、例外を追加することができます (次を参照: フィルターと条件)。 例えば、カスタム化されたしきい値よりマッピングアイテムの一部の値が大きい場合、例外をスローするなどが挙げられます。

 

MapForce を使用して、 WSDL Web サービスをデザインする際にも例外を追加することができます。(次を参照: Web サービスのフォールト)。

 

例外をマッピングに追加する:

1.「挿入」 メニューから、「例外」をクリックします。
2.「例外の挿入」 ( ic-component_exception ) ツールバーボタンをクリックします。
3.例外 throw 入力をフィルターの on-true または on-false 出力に接続します。
4.この例外がスローされると、任意で、例外の error-text 入力を、エラーのテキストを与える他の(通常、 定数である)コンポーネントに接続します。

 

メモ:フィルターの on-trueon-false 出力が双方接続されている必要があります。具体的には、これら出力の内の1つが、例外に (中間関数または、コンポーネントを使用することなく)直接接続されていなければなりません。

 

マッピングに例外が発生すると、 以下のような通知が送信されます:

 

MapForce 内でメッセージウィンドウはエラーと例外テキストを表示します。"Expense limit exceeded")。

 

except-xslt2

 

マッピング言語が XSLT 2.0 または XQuery の場合、 「実行に失敗しました」" エラーがメッセージウィンドウ内で表示され、対応する XSLT2 または XQuery タブが開かれます。エラーの生じたラインはメッセージウィンドウ内でハイライトされます。

 

MapForce Server からマッピングを実行する場合は、 MapForce 内で定義されたカスタムの例外テキストに続きエラー 「例外がスローされました!」 が返されます。

exception_mfs

生成された C#、C++、 または Java コードからマッピングを実行すると、 エラー "USER EXCEPTION" が、内で定義されたカスタム例外テキストの前に返されます。

exception_codegen

 

次も参照:

 

例: "より大きい" 条件の例外
例: ノードが存在しない場合の例外

(C) 2019 Altova GmbH