16.4. エラータイプとフィルター


エラー処理ではどのような種類のエラーも捕まえて処理しようとするため、エラーをカテゴリー分けする方法が必要になります。こうすることで、エラーから適切に情報を抽出し、プラグ可能とすることができます。これは、ユーザーによっては、デフォルトとは違う方法で特定タイプのエラーの出力と処理方法を必要とするためです。

エラーのカテゴリー分けとフィルターリングは、ExecutionErrorFilters をベースにしています。このインターフェイスは ExecutionError のインスタンス構築を担っており、これは後で ExecutionErrorStorage 戦略で保存されます。これには以下のメソッドがあります。

  • accept: エラーがフィルターで処理可能かどうかを示します。
  • filter: 実際のフィルターリング、処理などが発生する場所です。
  • getPriority: フィルター呼び出し時に使用される優先度を示します。

フィルターは、一度に処理するエラーは 1 つで、優先順位の仕組みを使用して、複数のフィルターで、別のビューで同じエラーが返されないようにします。優先順位を使用すると、より特化したフィルターで、エラーが受け入れられるかどうか、または別のフィルターで処理可能かが判断されます。

ExecutionErrorFilterServiceLoader メカニズムを使用することで提供され、これによりエラー処理の機能が容易に拡張できます。

Red Hat Process Automation Manager には以下の ExecutionErrorFilters が同梱されています。

表16.1 ExecutionErrorFilters
クラス名タイプ優先順位

org.jbpm.runtime.manager.impl.error.filters.ProcessExecutionErrorFilter

Process

100

org.jbpm.runtime.manager.impl.error.filters.TaskExecutionErrorFilter

タスク

80

org.jbpm.runtime.manager.impl.error.filters.DBExecutionErrorFilter

DB

200

org.jbpm.executor.impl.error.JobExecutionErrorFilter

Job

100

フィルターには、優先度の値の低いものが実行順序の高いものとして与えられます。上記のテーブルでは、以下の順序でフィルターが実行されます。

  1. タスク
  2. Process
  3. Job
  4. DB
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.