サービスコンテナ

このドキュメントのサンプルと例は、JEE上のAEM Forms環境に限られています。

サービスコンテナに配置されたAEM Formsサービス(Encryptionサービス、長期間有効なプロセス、短時間有効なプロセスなどの標準サービスを含む)は、EJBプロバイダーなどの様々なプロバイダーを使用して呼び出すことができます。 EJBプロバイダーを使用すると、RMI/IIOP経由でAEM Formsサービスを呼び出すことができます。 Webサービスプロバイダーは、SOAP/HTTPやSOAP/JMSなどの標準を使用して、Webサービス(WSDL生成)としてサービスを公開します。

次の表に、AEM Formsサービスをプログラムで呼び出す様々な方法を示します。

呼び出しメソッド

説明

リモート統合

リモート統合は、Flexクライアントがサービス操作を呼び出す機能を提供します。 (「(AEM formsでは非推奨)AEM Forms Remotingを使用したAEM Formsの呼び出し」を参照)。

Java API

Java APIは、AEM Formsサービスを呼び出すことができます。 Java APIは、クライアントライブラリとJava呼び出しAPIに整理されています。 (Java APIを使用したAEM Formsの呼び出しを参照)。

Webサービス

AEM Formsは、SOAP/HTTPなどのWebサービス標準をサポートしています。 W3Cで定義されたWebサービス標準に準拠したWSDLを使用して、サービスをWebサービスとして公開できます。

サービスは、.NET FrameworkやSun™ Web Services SDKなど、任意のWebサービススタックから呼び出すことができます。 (Webサービスを使用したAEM Formsの呼び出しを参照)。

RESTリクエスト

AEM Formsは、RESTリクエストをサポートします。 サービスは、HTMLページから直接呼び出すことができます。 (REST要求を使用したAEM Formsの呼び出しを参照)。

次の図は、AEM Formsサービスをプログラムで呼び出す様々な方法を視覚的に示しています。

メモ

AEM Forms SDKを使用してAEM Formsサービスを呼び出すクライアントアプリケーションを作成するほか、サービスコンテナにデプロイできるコンポーネントを作成することもできます。 例えば、プロセスで使用できるカスタムデータ型を含むBankコンポーネントを作成できます。 つまり、com.adobe.idp.BankAccountなどのデータ型を作成できます。 その後、クライアントアプリケーションにcom.adobe.idp.BankAccountインスタンスを作成できます。

サービスコンテナには次の機能があります。

  • 異なるメソッドを使用してAEM Formsサービスを呼び出すことができます。 サービスを設定するには、エンドポイントを設定して、すべてのメソッドを使用して呼び出すことができます。リモート処理、Java API、WebサービスおよびREST。 (エンドポイントのプログラムによる管理を参照)。

  • メッセージを呼び出し要求と呼ばれる正規化された形式に変換します。 呼び出し要求は、クライアントアプリケーション(または他のサービス)からサービスコンテナ内のサービスに送信されます。 呼び出し要求には、呼び出すサービスの名前や、操作の実行に必要なデータ値などの情報が含まれます。 多くのサービスでは、操作を実行するためにドキュメントが必要です。 したがって、呼び出し要求には通常、PDFデータ、XDPデータ、XMLデータなどのドキュメントが含まれます。

  • 呼び出し要求を適切なサービスにルーティングします(呼び出すサービスの名前は呼び出し要求の一部です)。

  • 呼び出し元が指定されたサービス操作を呼び出す権限を持っているかどうかを判断するなどのタスクを実行します。 呼び出し要求には、有効なAEM formsのユーザー名とパスワードを含める必要があります。

    呼び出し要求をサービスに送信する方法は異なります。 また、必要な入力値をサービスに送信する方法は異なります。 例えば、Java APIを使用して、PDFドキュメントを必要とするサービスを呼び出すとします。 対応するJavaメソッドには、PDFドキュメントを受け入れるパラメーターが含まれています。 この場合、パラメーターのデータ型はcom.adobe.idp.Documentです。 (Java APIを使用してAEM Formsにデータを渡すを参照)。

    監視フォルダーを使用してサービスを呼び出す場合、設定済みの監視フォルダーにファイルを配置すると、呼び出し要求が送信されます。 電子メールを使用してサービスを呼び出す場合、電子メールメッセージが設定されたインボックスに届くと、呼び出し要求がサービスに送信されます。

    サービスコンテナは、操作の実行後に呼び出し応答を返します。 呼び出し応答には、操作の結果などの情報が含まれます。 例えば、操作によってPDFドキュメントが変更された場合、呼び出し応答には変更されたPDFドキュメントが含まれます。 操作に失敗した場合は、呼び出し応答にエラーメッセージが含まれます。

    呼び出し応答は、呼び出し要求が送信されるのと同じ方法で取得できます。 つまり、呼び出し要求がJava APIを使用して送信される場合、呼び出し応答はJava APIを使用して取得できます。 例えば、操作によってPDFドキュメントが変更されるとします。 サービスを呼び出したJavaメソッドの戻り値を取得することで、変更されたPDFドキュメントを取得できます。

    長期間有効なプロセスが呼び出されると、呼び出し応答に呼び出し要求に関連付けられた識別子の値が含まれます。 この識別子の値を使用して、後でプロセスのステータスを確認できます。 例えば、 MortgageLoanの長期間有効なサービスを考えてみましょう。 識別子の値を使用して、プロセスが正常に完了したかどうかを確認できます。 (人間中心の長期間有効なプロセスの呼び出しを参照。)

    次の図は、サービスを呼び出す(Java APIを使用する)クライアントアプリケーションを示しています。

    クライアントアプリケーションがサービスを呼び出すと、次の3つのイベントが発生します。

    1. クライアントアプリケーションが呼び出し要求をサービスに送信します。
    2. サービスは、呼び出し要求で指定された操作を実行します。
    3. サービスコンテナは、クライアントアプリケーションに呼び出し応答を返します。

関連トピック

AEM Formsプロセスについて

(AEM formsでは非推奨)AEM Forms Remotingを使用したAEM Formsの呼び出し

Java API を使用した AEM Forms の呼び出し

Web サービスを使用した AEM Forms の呼び出し

人間中心の長期間有効なプロセスの呼び出し

REST要求を使用したAEM Formsの呼び出し

このページ