Handle Errors アサーション

Handle Errors アサーションは、その子アサーションからアサーション設定または I/O の例外を検出したときに処理を停止するように設計されている複合アサーションです。たとえば、このアサーションは、以下を検出した場合にポリシーの処理を停止します。
gateway83
Handle Errors アサーション
は、その子アサーションからアサーション設定または I/O の例外を検出したときに処理を停止するように設計されている複合アサーションです。たとえば、このアサーションは、以下を検出した場合にポリシーの処理を停止します。
  • 例外(Raise Error アサーションによってトリガされたものなど)
  • ポリシー アサーションの致命的な設定の誤り。たとえば、インポートされたポリシーの XML や REST 管理 API で取得された情報が破損している場合など
  • 未処理の(予期しない)ランタイム例外によってトリガされたエラー 
これらのエラーのいずれかがキャッチされると、Handle Errors アサーションは、以下を行います。
  • 子アサーションの処理の停止
  • 例外のログ記録
  • コンテキスト変数に例外メッセージを配置
  • ただし、失敗はしない
その他のタイプの例外がキャッチされた場合にのみ、Handle Errors アサーションは失敗します。
重要:
Handle Errors アサーションは、子から通常の失敗(たとえば、正規表現の評価の失敗)を取得する「すべてをキャッチする」アサーションではありません。これらのシナリオでは、At Least One Assertion Must Evaluate to True アサーションの使用を検討してください。これらのアサーションは、その子アサーションからのあらゆる種類の失敗に対応します。
目次
All Assertions Must Evaluate to True アサーションの場合と同様に、Handle Errors アサーションは、例外がキャッチされると処理を停止します。たとえば、単純なポリシー ツリーを考えてみます。
Handle Error Assertion
   Join Variable Assertion
  
<Assertion that throws a PolicyAssertionException/IOException>
   Map Value Assertion
上記の例では、Map Value アサーションは実行されません。
意図的に例外をスローして、Handle Errors アサーションの処理を停止する必要がある場合は、Raise Error アサーションを追加します。
コンテキスト変数
変数
説明
$
{
<prefix>
.message}
例外メッセージを返します。
クラスタ プロパティ
なし