Using Camunda Business Processes
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

CamundaからLiferay APIを呼び出す

Liferay コネクタを使用すると、Camunda タスクから Liferay API を呼び出すことができます。 これは、 Camunda HTTP REST コネクタ上に構築されたプロトコル コネクタです。

Camunda Liferay Connector から Liferay の API へのアウトバウンド通信を有効にするには、次の手順に従います。

  1. Camundaインスタンスに、 Liferay Connectorをインストールします。

  2. Liferay で、Liferay の API への接続を承認します。

    • グローバル メニュー → コントロール パネル → OAuth2 管理で、新しい OAuth2 アプリケーションを追加します。 「許可された認証タイプ」の下で「クライアント資格情報」を選択し、「クライアント資格情報ユーザー」の下で適切な Liferay 権限を持つユーザーを選択してください。 クライアント プロファイルでヘッドレス サーバーを選択すると、自動的に有効になる承認スコープを最小限に抑えることができます。
    • プロセスに必要な API スコープを定義します。
    • クライアント ID とシークレットをコピーします。

    詳細については、 OAuth2 を使用してユーザーを認証する を参照してください。 他の形式の認証も利用可能です (例: 基本的なユーザー名とパスワードの認証) が、実稼働環境では OAuth2 が推奨されます。

  3. Camunda に戻り、タスクを追加して、Liferay Connector テンプレートを選択します。

  4. Liferay で作成した OAuth2 アプリケーションからクライアント ID とシークレットを追加します。

    実稼働環境では、 Camunda シークレット を使用して資格情報を安全に保存します。 クライアント ID とシークレットに個別のキー/値ペアを追加します。 Liferay Connector プロパティでシークレットを参照する方法については、 「シークレットの使用」 を参照してください。

  5. 次のパターンに従ってトークンエンドポイントURLを追加します: https://[Liferay Base URL]/o/oauth2/token

    Liferay の OAuth2 トークン エンドポイントを使用して認証します。

次に、コネクタで HTTP エンドポイントを構成します。

  1. モデル タイプで、[カスタム オブジェクト] または [その他] を選択します。 残りのオプションはケースごとに若干異なります。

  2. ベース URL を Liferay インスタンスのエンドポイントに設定します。

    Foo というカスタム オブジェクトがあり、複数形が foosの場合、値は次のようになります。

    https://myliferayinstance.com/o/c/foos
    

    「その他のモデル タイプ」を選択し、headless-admin-user API を呼び出す場合は、次のようになります。

    https://myliferayinstance.com/o/headless-admin-user
    
  3. 呼び出すエンドポイントを設定します。

    カスタム オブジェクト API 呼び出しの場合、操作タイプと応答を保存するかどうかを選択できます。 使用可能な操作タイプには、オブジェクトの取得、オブジェクトの取得、オブジェクトの作成、オブジェクトの更新、オブジェクト フィールドの更新、オブジェクトの削除などがあります。

    「その他のモデル タイプ」を選択した場合は、カスタム パス、メソッド、ヘッダー、およびクエリ パラメータを定義します。 たとえば、アカウント ERC を含む変数を使用して getAccountByExternalReferenceCode エンドポイントを呼び出すには、次のパスを設定します。

    "/v1.0/accounts/by-external-reference-code/" + accountExternalReferenceCode
    

    この例では、ERC は Liferay オブジェクトの Webhook アクションからのペイロードで Camunda に送信され、Webhook コネクタの構成で変数として保存される可能性があります。 Liferay Webhooks を使用して Camunda でイベントをトリガーするを参照してください。

エンドポイントを構成します。

エンドポイントを構成した後、応答を処理するようにコネクタを構成する必要があります。

  1. 必要に応じて、応答を保存する変数の名前を設定します。 デフォルトでは、レスポンスは responseという一時的なローカル変数で利用できます。

  2. 応答の特定の属性をより細かい変数に処理するには、結果式を使用します。 この FEEL 式 は応答を受け取り、いくつかの変数を定義します。

    = {
        body: response.body,
        dateCreated: response.body.dateCreated,
        id: response.body.id,
        name: response.body.name,
        type: response.body.type,
    }
    

    元の応答は次のようになります。

    {
      "accountContactInformation": {
        "emailAddresses": [],
        "postalAddresses": [],
        "telephones": [],
        "webUrls": []
      },
      "actions": {
        "move-organization-accounts": {
          "method": "PATCH",
          "href": "http://localhost:8080/o/headless-admin-user/v1.0/organizations/move-accounts/34621/{targetOrganizationId}"
        },
        "replace-by-external-reference-code": {
          "method": "PUT",
          "href": "http://localhost:8080/o/headless-admin-user/v1.0/accounts/by-external-reference-code/{externalReferenceCode}"
        }
      },
      "customFields": [],
      "dateCreated": "2025-05-06T05:15:21Z",
      "dateModified": "2025-05-06T05:15:21Z",
      "defaultBillingAddressId": 0,
      "defaultShippingAddressId": 0,
      "description": "",
      "domains": [],
      "externalReferenceCode": "6b074194-e3d8-3a6f-6fc7-981c6f1253a6",
      "id": 34621,
      "logoId": 0,
      "logoURL": "/image/organization_logo?img_id=0&t=1747731138313",
      "name": "Account1",
      "numberOfUsers": 2,
      "organizationExternalReferenceCodes": [],
      "organizationIds": [],
      "parentAccountId": 0,
      "status": 0,
      "taxId": "",
      "type": "business"
    }
    

この例では、結果式はレスポンス変数から bodydateCreatedidname、および type 属性を抽出し、同じ名前のプロセス変数に割り当てます。 その後、これらの変数をワークフロー プロセスのステップで使用できます。 結果式の属性にアクセスするための構文は、応答オブジェクトの構造によって異なります。 詳細については、 FEEL コンテキスト式のドキュメント を参照してください。

アウトバウンド接続と OAuth2 を設定すると、Camunda から Liferay の API を呼び出して応答を操作できるようになります。

トラブルシューティング

Liferay コネクタで問題が発生した場合は、次の点を調査してください。

  • Liferay の資格情報が正しいことを確認してください。

  • 構成プロパティが正しく設定されていることを確認してください。

  • ログでエラー メッセージを確認してください。

  • さらにサポートが必要な場合は、 Camunda サポート にお問い合わせください。