21.3. サポート対象の KIE Server REST API エンドポイント
KIe Server REST API は、Red Hat Process Automation Manager で以下のタイプのリソースにエンドポイントを提供します。
- KIE Server および KIE コンテナー
- KIE セッションアセット (ランタイムコマンド用)
- DMN アセット
- プラニングソルバー
- プロセス
- プロセスイメージ
- プロセスおよびタスクフォーム
- タスク
- ケース
- ドキュメント
- ジョブ
- プロセス、タスク、およびケースのクエリー
- カスタムクエリー
KIE Server REST API のベース URL は http://SERVER:PORT/kie-server/services/rest/
です。ユーザーロール kie-server
では、すべての要求で HTTP の Basic 認証またはトークンベースの認証が必要です。
KIE Server REST API エンドポイントの完全一覧と説明については、以下の関連資料を参照してください。
- jBPM ドキュメントページ (静的) の Execution Server REST API
http://SERVER:PORT/kie-server/docs
(動的。稼働中の KIE Server が必要) ページの KIE Server REST API 用 Swagger UI注記デフォルトでは、
org.kie.swagger.server.ext.disabled=false
システムプロパティーが指定されており、KIE Server の Swagger Web インターフェイスが有効になっています。KIE Server で Swagger Web インターフェイスを無効にするには、このシステムプロパティーをtrue
に設定してください。
API がプロセスイメージにアクセスするには、システムプロパティー <storesvgonsave enabled="true"/>
が $SERVER_HOME/standalone/deployments/business-central.war/org.kie.workbench.KIEWebapp/profiles/jbpm.xml
で Red Hat Process Automation Manager プロジェクト用に設定されている必要があります。このプロパティーは、デフォルトで true
に設定されています。API がプロセスイメージを使用していない場合は、ファイルで true
に設定して KIE Server を再起動し、関連プロセスを変更して保存します。その後、プロジェクトをビルドしてデプロイします。このプロパティーの設定により SVG イメージが保存されるので、KIE Server REST API が取得できるようになります。
21.3.1. カスタムクエリー
カスタムクエリーエンドポイントを使用して、Red Hat Process Automation Manager でカスタムクエリーを作成およびアクセスできます。カスタムクエリーは、Red Hat Process Automation Manager データベースから任意のデータをリクエストできます。
Red Hat Process Automation Manager には、多数のカスタムクエリーが含まれています。これらのクエリーを使用して、プロセスインスタンスとユーザータスクの完全なリストにアクセスできます。
カスタムクエリーの実行時に、mapper
パラメーターに クエリーマッパー の名前を指定する必要があります。マッパーは、SQL クエリー結果を JSON 応答のオブジェクトにマッピングします。独自のクエリー結果マッパーか、Red Hat Process Automation Manager で提供されているマッパーのいずれかを実装することができます。Red Hat Process Automation Manager のクエリーマッパーは、テーブルをエントリーにマッピングする、Hibernate などの他のオブジェクト関係マッピング (ORM) プロバイダーと同様のものです。
たとえば、カスタムクエリーがプロセスインスタンスデータを返す場合は、org.jbpm.kie.services.impl.query.mapper.ProcessInstanceQueryMapper
マッパーを使用することもできます。これも ProcessInstances
として登録されています。カスタムクエリーがヒューマンタスクデータを返す場合は、org.jbpm.kie.services.impl.query.mapper.UserTaskInstanceQueryMapper
マッパーを使用することもできます。これも UserTasks
として登録されています。追加情報を提供する他のマッパーを使用することもできます。
Red Hat Process Automation Manager に含まれるクエリーマッパーのリストは、GitHub リポジトリー を参照してください。