IBM FileNet P8, バージョン 5.2.1            

Process Engine REST Service

Process Engine REST Service サーブレットは、Content Platform Engine サーバーの一部です。 REST Service を使用すると軽量のクライアント (通常、JavaScript または Ajax ベースのアプリケーション) は HTTP を介してワークフロー・システム・リソースにアクセスできます。 要求データと応答データの両方に HTTP 照会文字列形式が使用されます。データ交換形式として JavaScript Object Notation (JSON) が使用されます。

クライアント・アプリケーションは、Process Engine REST Service を使用して、以下のような基本的なワークフロー・システム操作を実行できます。
  • ワークフローの起動と変更
  • 参加者のロールの更新
  • 参加者と、それぞれに割り当てられたワーク・アイテムに関する情報の取得

特定のプラットフォームの依存関係とサポートされるバージョン番号については、IBM® FileNet® P8 のシステム要件の Web ページを参照してください。

基本的なアーキテクチャーを以下の図に示します。

Process Engine REST Service のアーキテクチャー

認証

REST Service リソース要求では、呼び出し元のクライアントを HTTP 基本認証を使用して認証する必要があります。指定されたリソース上で REST 操作にアクセスするためのクライアントの認可は、リソースに割り当てられている権限で決まります。

リソースのデータ形式

REST Service リソースは、要求および応答の各データに、JSON MIME タイプ (content-type="application/json") と照会文字列形式を使用します。長い照会文字列では、この規則に例外が発生する場合があります (URL 長の制限のセクションを参照)。すべてのデータは UTF-8 形式である必要があります (照会文字列と要求本文内のデータの両方)。

日付フィールド

日付フィールドの場合、値は ISO 8601 形式 YYYY-MM-DDThh:mm:ssZ の文字列で、UTC 時間です。例: 2008-03-13T19:49:00Z。

URL 長の制限

複雑な照会での GET 操作に使用される URL は、長い照会文字列になる可能性があります。ブラウザーは比較的長い要求文字列を処理できますが、それでもサイズが問題になる可能性があります。そのような場合、クライアントはこの条件を検出し、GET 要求を POST 要求に変更します。 照会パラメーター (「?」なし) は、コンテンツ・タイプを application/x-www-form-urlencoded に設定した POST 要求の本文に指定されます。

例えば、次の POST ステートメントを想定します。

POST /queues/{queue}/workbaskets/{workbasket}/queueelements
Content-Type=application/x-www-form-urlencoded

filters=[State=CA, City=Costa Mesa] &pageSize=50 &queryFlags=1 &orderBy=State &lastRecord = xxxxxx

これは、次の GET ステートメントと同等です。

GET /queues/{queue}/workbaskets/{workbasket}/queueelements?filters=[State=CA, City=Costa Mesa]&pageSize=50&queryFlags=1&orderBy=State& lastRecord =xxxxxx

リソースのナビゲーション

REST リソース間を移動する場合、手動で URI を構成せず、応答内にある URI に従うのがベスト・プラクティスです。サーバーはリソースへの移動用の、最適な URI を提供できるため、この方法は将来の最適化に対応します。

すべての REST リソースのベース URI は次のとおりです。

    http://host:port/{context}/{servlet}/p8/bpm/v1/

このベースは、応答 URI には含まれません。各クライアントは、ベース URI を使用して構成します。その後、このベース URI 値を応答内にある URI の先頭に付加できます。

クライアントは、次の既知の URI にナビゲートして、現在のユーザーのロールのリストをフェッチします。

    http://host:port/{context}/{servlet}/p8/bpm/v1/appspaces/{appspace}/myroles

クライアントは、myroles リソースの次の JSON 応答を受信します。

{
  "Agent":{"name":"Agent","URI":"appspaces/Autoclaim/roles/Agent"},
  "Manager":{"name":"Manager","URI":"appspaces/Autoclaim/roles/Manager"
}

その後、クライアントは、ベース URI を応答内の URI プロパティーの値の先頭に付加して、Agent ロールにナビゲートします。

    "http://host:port/{context}/{servlet}/p8/bpm/v1/" + "appspaces/Autoclaim/roles/Agent"

エラー処理

REST Service 要求の処理中に認識されたエラーからは、該当する HTTP 状況コード (200 OK、404 Not Found など) が返されます。

ロケールの指定

Accept-Language HTTP リクエスト・ヘッダー・フィールドを使用して、要求の応答として優先される言語を指定します。Process Engine REST Service は、Process Java™ API を呼び出します。このサービスは、標準の XLIFF (XML Localization Interchange File Format) ファイルを使用して翻訳を行います。

詳細については、XLIFF ファイルの作成およびロケール・リソースの検索の優先順位を参照してください。



最終更新日: 2016 年 3 月
rest_overview.htm

© Copyright IBM Corp. 2016.