4.4. プロセスデザイナーでの BPMN2 カスタムタスク


BPMN2 仕様は、bpmn2:task 要素を拡張してソフトウェア実装でカスタムタスクを作成する機能をサポートします。標準の BPMN タスクと同様に、カスタムタスクは、ビジネスプロセスモデルで完了するアクションを特定しますが、これには、特定のタイプ (REST、電子メール、または Web サービス) の外部サービスとの互換性や、プロセス (マイルストーン) 内のチェックポイント動作などの特化した機能も含まれます。

Red Hat Process Automation Manager は、BPMN モデラーパレットの Custom Tasks の下に、以下の事前定義済みのカスタムタスクを提供します。

表4.10 サポートされるカスタムタスク
カスタムタスクのタイプカスタムタスクのノード

Rest

bpmn rest custom task

電子メール

bpmn email custom task

ログ

bpmn log custom task

WebService

bpmn webservice custom task

マイルストーン

bpmn milestone

DecisionTask

bpmn decision task custom

BusinessRuleTask

bpmn business rule custom task

KafkaPublishMessages

bpmn kafkapublishmessages task

Business Central でのカスタムタスクを有効または無効にする方法は、58章Business Central でのカスタムタスクの管理 を参照してください。

BPMN モデラーでは、一部のカスタムタスクに対して以下の一般的なプロパティーを設定できます。

表4.11 一般的なカスタムタスクプロパティー
ラベル説明

名前

タスクの名前を識別します。タスクノードをダブルクリックして名前を編集することもできます。

ドキュメント

タスクについて記述します。このフィールドのテキストはプロセスドキュメントに含まれます (該当する場合)。

非同期です

このタスクが非同期で呼び出されるかどうかを決定します。

アドホックの自動開始

これが自動的に開始されるアドホックタスクであるかどうかを決定します。このオプションを使用すると、タスクは、シグナルイベントにより開始するのではなく、プロセスが作成されたときに自動的に開始します。

開始時アクション

タスクの開始時のアクションを指定する Java、JavaScript、または MVEL スクリプトを定義します。

終了時アクション

タスクの終了時にアクションを指定する Java、JavaScript、または MVEL スクリプトを定義します。

SLA 期日

サービスレベルアグリーメント (SLA) の有効期限が切れるまでの期間 (文字列タイプ) を指定します。期間は、日数、分、秒、およびミリ秒で指定できます。たとえば、SLA due date フィールドの 1m 値は 1 分を示します。

割当

タスクのデータの入力と出力を定義します。

Metadata Attributes

メタデータ属性が存在する場合に何らかのアクションを実装するリスナーなど、カスタムイベントリスナーに使用するカスタムメタデータ属性の名前と値を定義します。

メタデータ属性は、BPMN 図に新しい metaData 拡張を可能にし、タスク全体の動作を変更します。

Rest

Rest カスタムタスクは、リモートの RESTful サービスを呼び出すか、プロセスから HTTP 要求を実行するために使用されます。

bpmn rest custom task

Rest カスタムタスクを使用するには、プロセスモデラーに URL、HTTP メソッド、および認証情報を設定します。プロセスが Rest カスタムタスクに到達したら、HTTP 要求を生成し、応答を文字列として返します。

Properties パネルで Assignments をクリックし、REST Data I/O ウィンドウを開きます。REST Data I/O ウィンドウで、必要に応じてデータの入力と出力を設定できます。たとえば、Rest カスタムタスクを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • URL: REST サービスのエンドポイント URL。この属性は必須です。
  • Method: 呼び出されたエンドポイントのメソッド (例: GET および POST など)。デフォルト値は GET です。
  • ContentType: データ送信時のデータタイプ。この属性は、POST および PUT 要求では必須です。
  • ContentTypeCharset: ContentType に設定された文字セット。
  • Content: 送信するデータ。この属性は後方互換性に対応し、代わりに ContentData 属性を使用します。
  • ContentData: 送信するデータ。この属性は、POST および PUT 要求では必須です。
  • ConnectTimeout: 接続タイムアウト (秒単位)。デフォルト値は 60000 ミリ秒です。入力値はミリ秒単位で指定する必要があります。
  • ReadTimeout: 応答のタイムアウト (秒単位)。デフォルト値は 60000 ミリ秒です。入力値はミリ秒単位で指定する必要があります。
  • Username: 認証用のユーザー名。
  • Password: 認証用のパスワード。
  • AuthUrl: 認証を処理する URL。
  • AuthType: 認証を処理する URL のタイプ。
  • HandleResponseErrors (オプション): 応答コードが失敗した場合に、エラーを発生させるようにハンドラーに指示 (2XX は除く)。
  • ResultClass: 応答がアンマーシャリングされるクラスの有効な名前。指定されない場合は、未加工の応答が文字列形式で返されます。
  • AcceptHeader: Accept ヘッダーの値。
  • AcceptCharset: Accept ヘッダーの文字セット。
  • Headers: REST 呼び出しへ渡すヘッダー (例: content-type=text/html など)。

以下のデータの出力を Data Outputs and Assignments に追加し、タスク実行の出力を保存できます。

  • Result: 残りのカスタムタスクの出力変数 (オブジェクトタイプ)。

電子メール

プロセスからの電子メールの送信には、電子メールのカスタムタスクが使用されます。これには、関連する電子メールボディーが含まれます。

bpmn email custom task

電子メールのカスタムタスクがアクティブになると、電子メールデータがタスクのデータ入力プロパティーに割り当てられます。関連する電子メールが送信されると、電子メールのカスタムタスクを完了します。

Properties パネルで Assignments をクリックし、Email Data I/O ウィンドウを開きます。Email Data I/O ウィンドウで、必要に応じてデータ入力を設定できます。たとえば、電子メールカスタムタスクを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • Body: 電子メールのボディー
  • From: 送信者の電子メールアドレス。
  • Subject: 電子メールの件名。
  • To: 受信者の電子メールアドレス。セミコロン (;) で区切られた複数の電子メールアドレスを指定できます。
  • Template (任意): 電子メールのボディーを生成するテンプレート。Template 属性は、入力した場合には Body パラメーターをオーバーライドします。
  • Reply-To: 返信メッセージの送信先となる電子メールアドレス。
  • Cc: カーボンコピーの受信者の電子メールアドレス。セミコロン (;) で区切られた複数の電子メールアドレスを指定できます。
  • Bcc: ブラインドカーボンコピーの受信者の電子メールアドレス。セミコロン (;) で区切られた複数の電子メールアドレスを指定できます。
  • Attachments: 電子メールと共に送信する添付ファイル。
  • Debug: デバッグロギングを有効にするフラグ。

ログ

ログカスタムタスクは、プロセスからメッセージをログに記録する際に使用されます。ビジネスプロセスがログカスタムタスクに到達すると、メッセージデータがデータ入力プロパティーに割り当てられます。

bpmn log custom task

関連付けられたメッセージがログに記録されると、ログカスタムタスクを完了します。Properties パネルで Assignments をクリックし、Log Data I/O ウィンドウを開きます。Log Data I/O ウィンドウで、必要に応じてデータ入力を設定できます。たとえば、ログカスタムタスクを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • Message: プロセスからのログメッセージ。

WebService

プロセスから Web サービスを呼び出すために使用される Web サービスのカスタムタスク。このカスタムタスクは、文字列として保存された Web サービス応答を使用して Web サービスクライアントとして機能します。

bpmn webservice custom task

プロセスから Web サービスを呼び出すには、正しいタスクタイプを使用する必要があります。Properties パネルで Assignments をクリックし、WS Data I/O ウィンドウを開きます。WS Data I/O ウィンドウで、必要に応じてデータ入力と出力を設定できます。たとえば、Web サービスタスクを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • Endpoint: 呼び出す Web サービスのエンドポイントの場所。
  • Interface: Weather などのサービスの名前。
  • Mode: SYNCASYNC、または ONEWAY などのサービスのモード。
  • Namespace: Web サービスの名前空間 (例: http://ws.cdyne.com/WeatherWS/)。
  • Operation: 呼び出し用のメソッド名。
  • Parameter: 操作に送信するオブジェクトまたは配列。
  • Url: Web サービスの URL (http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL など)。

以下のデータの出力を Data Outputs and Assignments に追加し、タスク実行の出力を保存できます。

  • Result: Web サービスタスクの出力変数 (オブジェクトタイプ)。

マイルストーン

マイルストーンは、プロセスインスタンス内の 1 つの達成地点を表します。マイルストーンを使用して、特定のイベントにフラグを付けて他のタスクをトリガーするか、プロセスの進捗を追跡できます。

bpmn milestone

マイルストーンは、重要業績評価指標 (KPI) の追跡や、完了前のタスクの特定に役立ちます。マイルストーンは、プロセスのステージの最後に発生したり、他のマイルストーンを達成した結果として発生したりする場合もあります。

マイルストーンは、プロセスの実行中に以下の状態に到達できます。

  • Active: マイルストーンの条件がマイルストーンノードに対して定義されているが、条件がまだ満たされていない。
  • Completed: マイルストーンの条件が満たされ (該当する場合)、マイルストーンが達成されたため、このプロセスは次のタスクに進むか、または終了することができる。

Properties パネルで Assignments をクリックし、Milestone Data I/O ウィンドウを開きます。Milestone Data I/O ウィンドウで、必要に応じてデータ入力を設定できます。たとえば、マイルストーンを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • Condition: マイルストーンが満たす条件。たとえば、プロセス変数を使用する Java 式 (文字列データタイプ) を入力します。

DecisionTask

デシジョンタスクを使用して、DMN ダイアグラムを実行し、プロセスからデシジョンエンジンサービスを呼び出します。デフォルトでは、デシジョンタスクは DMN デシジョンにマッピングします。

bpmn decision task custom

デシジョンタスクを使用して、プロセスで運用上の意思決定を行うことができます。デシジョンタスクは、プロセスにおいて下す必要のある主要なデシジョンを特定する際に役立ちます。

Properties パネルで Assignments をクリックし、Decision Task Data I/O ウィンドウを開きます。Decision Task Data I/O ウィンドウで、必要に応じてデータ入力を設定できます。たとえば、デシジョンタスクを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • Decision: プロセスで下すデシジョン。
  • Language: デシジョンタスクの言語。デフォルトは DMN です。
  • Model: DMN モデル名。
  • Namespace: DMN モデルの名前空間。

BusinessRuleTask

ビジネスルールタスクを使用して、DRL ルールを評価し、プロセスからデシジョンエンジンサービスを呼び出します。デフォルトでは、ビジネスルールタスクは DRL ルールにマッピングします。

bpmn business rule custom task

ビジネスルールタスクを使用して、ビジネスプロセスで主要なビジネスルールを評価できます。Properties パネルで Assignments をクリックし、Business Rule Task Data I/O ウィンドウを開きます。Business Rule Task Data I/O ウィンドウで、必要に応じてデータ入力を設定できます。たとえば、ビジネスルールタスクを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • KieSessionName: KIE セッションの名前。
  • KieSessionType: KIE セッションのタイプ。
  • Language: ビジネスルールタスクの言語。デフォルトは DRL です。

KafkaPublishMessages

Kafka ワークアイテムは、イベントを Kafka トピックに送信するために使用されます。このカスタムタスクには、Kafka プロデューサーを使用して特定の Kafka サーバートピックにメッセージを送信するワークアイテムハンドラーが含まれます。たとえば、KafkaPublishMessages タスクは、プロセスから Kafka トピックにメッセージを公開します。

bpmn kafkapublishmessages task

Properties パネルで Assignments をクリックし、KafkaPublishMessages Data I/O ウィンドウを開きます。KafkaPublishMessages Data I/O ウィンドウで、必要に応じてデータ入力と出力を設定できます。たとえば、Kafka のワークアイテムを実行するには、Data Inputs and Assignments フィールドで以下のデータ入力を実行します。

  • Key: 送信される Kafka メッセージのキー。
  • Topic: Kafka トピックの名前。
  • Value: 送信される Kafka メッセージの値

以下のデータの出力を Data Outputs and Assignments に追加し、ワークアイテム実行の出力を保存できます。

  • Result: ワークアイテムの出力変数 (文字列タイプ)。

ビジネスプロセスでの KafkaPublishMessages の詳細は Red Hat Process Automation Manager と Red Hat AMQ Streams の統合 を参照してください。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat, Inc.