invoke > プロセスのランタイムタスク > クラウドサーバーにデプロイしたプロセスの呼び出し
  

クラウドサーバーにデプロイしたプロセスの呼び出し

以降のトピックでは、クラウドサーバーにデプロイしたProcess DesignerプロセスおよびProcess Developerプロセスを呼び出す方法について説明します。

WebサービスとSOAPエンドポイント

Process Designerは、自動生成されたWSDLインタフェースを通じてWebサービスを公開します。ここにアクセスして、SOAPエンドポイントとして使用できます。使用する各Webサービスには、アプリケーションサーバーでホストされているメソッドのセットが含まれており、これらは操作とも呼ばれます。これらのオペレーションは、クラウド上やネットワークを介してリモートで呼び出すことができます。
SOAPサービスURLを使用してクラウドサーバーにデプロイされたプロセスを呼び出すと、SOAPActionヘッダーはデフォルトでプロセス名に設定されます。ただし、ヘッダーに別の値を指定することもできます。SOAPエンドポイントの使用方法の詳細については、SOAPエンドポイントのルールとガイドラインを参照してください。
操作が起動したら、SOAPメッセージを作成し、それを通常はHTTP/HTTPSを経由してWebサービスに送信します。SOAPは、一般的なXMLベースのメッセージングプロトコルで、情報を交換するために使用します。
Webサービスには、操作自体とそれらの起動方法を記述したXMLである、WSDL(Web Services Definition Language)ドキュメントが含まれます。使用するすべてのWebサービスには、サービス名とエンドポイントURL(操作を起動するためにSOAPメッセージを送信する場所)が必要です。
使用可能な操作はSOAPインタフェースによってパブリッシュされるため、Webサービスの呼び出し元では内部的な詳細を把握しておく必要はありません。それぞれの呼び出しに対して、Webサービスは応答メッセージを返します。応答には、要求された情報またはフォールト情報(エラーの場合)が含まれます。
次の簡単なSOAPメッセージは、「追加」メソッドを呼び出して応答を返します。
<?xml version="1.0" encoding="UTF-8" ?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xmlns:s='http://www.w3.org/2001/XMLSchema'>
<SOAP-ENV:Body>
<Add xmlns="http://www. math.org">
<arg1 xsi:type="s:decimal">100</arg1>
<arg2 xsi:type="s:decimal">25</arg2>
</Add>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
この場合、応答メッセージは次のようになります。
<?xml version="1.0" encoding="UTF-8" ?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xmlns:s='http://www.w3.org/2001/XMLSchema'>
<SOAP-ENV:Body>
<AddResponse xmlns="http://www.math.org">
<AddResult>125</AddResult>
</AddResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Webサービスとして公開されるプロセスの定義

Process Designerを使用してプロセスを定義するときに、"xsd:any"のペイロードスタイルを処理するSOAPクライアントはSOAPエンドポイントを使用できます。これは、クライアントが入力と出力を処理し、フォールトを扱えることを意味します。
Process Designerは、ドキュメント/リテラルのメッセージスタイルと、ほとんどのWebサービスが使用するエンコーディングオプションを備えたSOAP 1.1標準をサポートします。
WSDLインタフェースでは、次のことができます。
SOAPエンドポイントをProcess Designerで定義するには、次の手順を実行します。
  1. 1プロセスのプロパティで、 [バインディング]の開始として[REST/SOAP]を選択します。
  2. 次の図に、[REST/SOAP]として設定された[バインディング]プロパティを示します。
    この図は、[REST/SOAP]として設定された[バインディング]プロパティを示しています。
  3. 2プロセスを定義してパブリッシュした後に、SOAPサービスURLが表示されます。
  4. 次の図に、SOAPサービスURLを示します。
    この図は、SOAPサービスURLを示しています。
  5. 3[WSDLファイルの表示]をクリックして、完全なWSDLを開き、このプロセス用に生成されたSOAPメッセージを参照します。URLをコピーしてエンドポイントとして使用できます。
  6. 注: プロセス名に日本語の文字が含まれている場合、ChromeブラウザでWSDLファイルを表示するとエラーが表示されることがあります。エラーが表示された場合、ページを右クリックし、[ページのソースを表示]を選択して、WSDLファイルを表示します。

メッセージイベントにアクセスするためのRESTおよびProcess DesignerのSOAPエンドポイント

Process Designerが生成したRESTおよびSOAP 1.1のエンドポイントを使用して、メッセージイベントにアクセスできます。SOAP 1.2エンドポイントが必要な場合は、Process Developerを使用してこれらのエンドポイントを生成します。Process Developerを使用して作成されたサービスのエンドポイントを取得する方法については、Process Developerのガイドに記載されているポリシーに基づいたバインディングに関する情報を参照してください。
注: 指定されたタイムフレーム内でRESTまたはSOAP要求の数がレート制限を超えると、HTTP 429ステータスコードが表示されます。
次の表に、メッセージイベントを起動する際に必要なアクセスのタイプに基づいた、RESTまたはSOAP 1.1それぞれのエンドポイントのパターンを指定します。
メッセージイベントのプロセスの開始プロパティとメッセージプロパティで[匿名アクセスを許可]が選択解除されている場合、プロセスではHTTP Basicアクセス認証が使用されます。メッセージイベントやサブプロセスの呼び出しで、プロセスが受け取るコールバックとは異なる方法で認証するようにプロセスを定義できます。
アクセスのタイプ
REST URLの形式
SOAP 1.1 URLの形式
HTTP Basicアクセス認証を使用するプロセス
https://{host}/active-bpel/rt/{ProcessName}
https://{host}/active-bpel/soap/{ProcessName}
OAuth2認証を使用するプロセス
https://{host}/active-bpel/rt/{ProcessName}
https://{host}/active-bpel/soap/{ProcessName}
匿名アクセスを使用するプロセス
https://{host}/active-bpel/public/rt/{TenantName}/{ProcessName}
https://{host}/active-bpel/public/soap/{TenantName}/{ProcessName}
匿名アクセスを使用するプロセスメッセージイベント
https://{host}/active-bpel/public/rt/{TenantName}/{ProcessName}/event/{MessageName}
https://{host}/active-bpel/public/soap/{TenantName}/{ProcessName}/event/{MessageName}
HTTP Basicアクセス認証を使用するプロセスメッセージイベント
https://{host}/active-bpel/rt/{ProcessName}/event/ {MessageName}
https://{host}/active-bpel/soap/{ProcessName}/event/{MessageName}
匿名アクセスを使用するサブプロセス内のプロセスメッセージイベント
https://{host}/active-bpel/public/rt/{TenantName}/{SubProcessName}/event/{MessageName}
https://{host}/active-bpel/public/soap/{TenantName}/{ProcessName}/event/{MessageName}
または
https://{host}/active-bpel/public/soap/{TenantName}/{SubProcessName}/event/{MessageName}
HTTP Basicアクセス認証を使用するサブプロセス内のプロセスメッセージイベント
https://{host}/active-bpel/rt/{SubProcessName}/event/{MessageName}
https://{host}/active-bpel/soap/{ProcessName}/event/{MessageName}
または
https://{host}/active-bpel/soap/{SubProcessName}/event/{MessageName}
注: SOAP要求で、イベントがプロセスまたはサブプロセスと同じアクセス方法(匿名またはHTTP Basicアクセス認証)を使用する場合は、デフォルトのプロセスまたはサブプロセスのエンドポイントを使用できます。

SOAPエンドポイントのルールとガイドライン

パブリックまたは認証されたプロセス呼び出しを実行する場合は、次のルールとガイドラインを考慮してください。