現在表示中:

アーキテクチャ

AEM Forms は、一連のパッケージとして AEM に組み込まれたアプリケーションです。AEM Forms は、JEE ベースの Forms Workflows アドオンでサポートされます。Forms Workflow アドオンには、高度なプロセス管理機能やドキュメントセキュリティ機能など、各種の高度な機能が用意されています。

AEM パッケージには、AEM OSGi コンテナに読み込まれるサービス(API プロバイダー)と、AEM Sling フレームワークで管理されるサーブレットまたは JSP(フロントエンド機能と REST API 機能の両方を提供)が含まれています。次の図は、このセットアップを示しています。

AEM-Forms-Architecture

AEM Forms のアーキテクチャには、次のコンポーネントが含まれています。

  • AEM のコアサービス: 組み込みアプリケーションに対して提供される AEM の基本サービス。AEM のコアサービスとしては、JCR に準拠したコンテンツリポジトリ、OSGI サービスコンテナ、ワークフローエンジン、トラストストア、キーストアなどがあります。これらのサービスは AEM Forms アプリケーションで使用できますが AEM Forms パッケージには含まれていません。これらのサービスは、AEM Forms の様々なコンポーネントで使用される、AEM スタック全体の不可欠な構成要素です。
  • フォーム共通のサービス:AEM Forms の各種コンポーネントに対して共通の機能を提供します。Document Manager と監視フォルダーのサポートを除き、これらのサービスは内部の Adobe コンポーネントでのみ使用されます。これらのサービスを外部で使用したり、カスタマイズしたりすることはできません。
  • Forms サービス:フォームのレンダリング、フォームから PDF 文書を生成するなどフォームに関係する機能を提供します。これらのサービスの多くは、AEM にカスタムコードを組み込んで利用する形で公開されています。
  • Web レイヤー:共通のサービスおよびフォームのサービス上に構築された JSP またはサーブレットで、次の機能を提供します。
    • フロントエンドのオーサリング:フォームのオーサリングと管理に使用されるユーザーインターフェイス。
    • フォームのレンダリングおよび送信のフロントエンド:AEM Forms のエンドユーザー向けユーザーインターフェイス(行政機関の Web サイトにアクセスするユーザー向けのユーザーインターフェイスなど)。このユーザーインターフェイスには、フォームのレンダリング機能と送信機能が用意されています。
    • REST API:JSP および サーブレットにより、モバイル SDK フォームなど、HTTP ベースのクライアントによるリモートでの利用向けにフォームサービスのサブセットがエクスポートされます。

AEM Forms Workflows アドオン:AEM Forms Workflows アドオンは、JEE スタック上で稼働する AEM Forms サーバーです。AEM Forms の特定のコンポーネントと、フォームデータ、ワークスペース、タスクの管理、ドキュメントセキュリティの複雑な処理を伴うユースケースで、AEM Forms Workflows アドオンが使用されます。  

  • 高度な追加のフォーム / インタラクティブ通信のデータ処理:このアドオンを使用して、高度なプロセス管理機能が必要になる複雑なユースケースで、フォーム / インタラクティブ通信データの詳細な処理を行い、その結果を適切なデータストアに保存することができます。
  • HTML Workspace のサポート(HTML Workspace を使用しているユーザー用):このアドオンにより、処理インスタンスでシングルサインオンを使用できるようになります。処理インスタンスでレンダリングされる特定のアセットを提供し、HTML Workspace 内でレンダリングされるフォームを送信することができます。

AEM Forms には、JEE ベースの Forms Workflows アドオンが含まれています。AEM コンポーネントで、次の機能を使用することができます。

  • 統合されたユーザー管理機能:Forms Workflows アドオンのユーザーを AEM ユーザーとして認識することができます。AEM と Forms Workflows アドオン(HTML Workspace など)との間でシングルサインオンが必要になる場合、この機能は必須です。
  • アセットのホスティング機能:Forms Workflows アドオンにより、AEM でレンダリングされるアセット(HTML5 フォームなど)を提供することができます。

AEM Forms のオーサリングユーザーインターフェイスでは、すべてのタイプのフォームを作成できるわけではありません。例えば、PDF フォームを作成することはできません。こうしたフォームは、スタンドアロンの Forms Designer アプリケーションを使用して設計され、ローカルディスクに保存されます。これらのフォームは、個別のファイルまたは zip ファイルとして、AEM Forms Manager にアップロードされます。AEM と Forms Workflows アドオンが同じ JEE サーバーにアプリケーションとしてデプロイされている場合は、アドオンにデプロイされるアプリケーションアセットとしてフォームを設計し、そのアドオンでフォームと AEM Forms Manager の同期を自動的に実行することもできます。

AEM と Forms Workflow アドオンには、どちらもワークフロー機能が付属しています。この機能により、AEM スタック上の様々なタスクに対する基本的なワークフローをすばやく作成してデプロイすることができます。Forms Workflow アドオンスタックの完全な Process Management 機能をインストールする必要はありません。AEM スタック上のワークフローの機能と Forms Workflow アドオンスタックの Process Management 機能では、いくつかの点が異なっています。AEM スタック上の Form 中心のワークフローの開発と管理を行う場合は、従来の AEM ワークフロー機能と AEM インボックス機能を使用します。

用語

以下の図は、AEM Forms の一般的なデプロイメント環境で使用される AEM Forms サーバーの様々な設定とそのコンポーネントを示しています。

aem_forms_-_recommendedtopology

オーサーインスタンス:オーサーインスタンスは、標準の作成者実行モードで稼働する AEM Forms サーバーです。オーサーインスタンスは、OSGi 環境内の JEE 上の AEM Forms にすることも、OSGi 環境内の AEM Forms にすることもできます。このインスタンスは、内部ユーザー、フォームとインタラクティブ通信の設計者、開発者が使用するためのインスタンスです。このインスタンスでは、次の機能を使用することができます。

  • フォームとインタラクティブ通信の作成機能と管理機能:設計者と開発者は、アダプティブフォームとインタラクティブ通信の作成と編集を行うことができます。また、外部で作成されたフォーム(Adobe Forms Designer で作成されたフォームなど)をアップロードしたり、こうしたアセットを Forms Manager コンソールを使用して管理したりすることができます。
  • フォームとインタラクティブ通信の発行機能:オーサーインスタンス上でホストされるアセットをパブリッシュインスタンスに発行して、ランタイム操作を実行することができます。AEM の複製機能を使用して、アセットが発行されます。すべてのオーサーインスタンス上で、発行済みフォームを処理インスタンスに手動でプッシュするための複製エージェントを設定し、受信したフォームをパブリッシュインスタンスに対して自動的に複製するための、「受信時」トリガーが有効になっている複製エージェントを処理インスタンス上で設定することをお勧めします。処理インスタンスの概念については、これ以降で説明します。

パブリッシュインスタンス:パブリッシュインスタンスは、標準のパブリッシュ実行モードで稼働する AEM Forms サーバーです。パブリッシュインスタンスは、フォームベースのアプリケーションを使用するエンドユーザー向けのインスタンスです。例えば、公開されている Web サイトにアクセスしてフォームを送信するユーザーなどが、このインスタンスを使用します。このインスタンスでは、次の機能を使用することができます。 

  • エンドユーザー用のフォームのレンダリングと送信を行う機能。
  • 送信済みフォームの未加工データを処理インスタンスに転送してさらに処理を行い、最終的な記録システムに保存する機能。この機能は、AEM Forms に付属するデフォルトの実装で AEM の逆複製機能を使用して実行されます。代替処理として、最初にフォームデータをローカルに保存するのではなく、フォームデータを処理インスタンスに直接プッシュすることもできます(逆複製を行うには、最初にフォームデータをローカルに保存しておく必要があります)。通常、処理インスタンスはパブリッシュインスタンスよりも安全な場所に配置されるため、顧客が機密データをパブリッシュインスタンスに保存することに不安を感じている場合は、上記の代替処理を実行してもかまいません。
  • インタラクティブ通信のレンダリングと送信を行う機能。パブリッシュインスタンス上でレターがレンダリングされ、対応するデータが処理インスタンスに送信されます。送信されたデータは保存され、後処理で使用されます。このデータをパブリッシュインスタンス上のローカルの場所に保存して、処理インスタンスに対してこのデータを逆複製することも、このデータをパブリッシュインスタンスに保存することなく、処理インスタンスに直接プッシュすることもできます(デフォルトのオプションは逆複製です)。セキュリティを意識している顧客の場合は、処理インスタンスに直接プッシュするオプションを使用することをお勧めします。必要に応じて、AEM 上のフォーム中心のワークフロー、または Forms Workflows アドオンでホストされるワークフロで、データの後処理を実行することができます。AEM 上のフォーム中心のワークフローの場合、データの送信メカニズム(逆複製または直接プッシュ)に関係なく、常に処理インスタンス上でワークフローがトリガーされます。

処理インスタンス:これは、Forms Manager グループにユーザーが割り当てられていない状態の作成者実行モードで実行される AEM Forms のインスタンスです。このグループにユーザーが割り当てられていない場合、フォームの作成処理と管理処理が処理インスタンスで実行されることはありません。これらの処理は、オーサーインスタンス上でのみ実行されます。処理インスタンスでは、次の機能を使用することができます。

  • パブリッシュインスタンスから送信された未加工のフォームデータを処理する機能:この機能は、主に AEM ワークフロー経由で実行されます。データが到着すると、AEM ワークフローがトリガーされます。到着したデータは AEM ワークフローによって処理され、適切なデータストアに保存されます。
  • フォームデータを安全な場所に保存する機能:処理インスタンスには、ファイアウォールの背後に配置されたリポジトリが用意されています。このリポジトリを使用して、ユーザーから隔離された未加工のフォームデータが保存されます。オーサーインスタンス上の設計者も、パブリッシュインスタンス上の開発者も、このリポジトリにアクセスすることはできません。サードパーティが提供する別のデータストアを顧客が使用しない場合は、このリポジトリが、最終的な処理済みデータの安全なリポジトリとして機能します。
  • パブリッシュインスタンスから送信された通信データを保存して後処理を実行する機能:AEM ワークフローは、対応するレター定義のオプションの後処理を実行します。AEM ワークフローで、最終的な処理済みデータを、適切な外部データストアに保存することができます。
  • HTML Workspace のホスト機能(HTML Workspace を使用している顧客用):処理インスタンスにより、HTML Workspace のフロントエンドがホストされます。内部ユーザーは、このフロントエンドを使用して、ユーザータスクに関連付けられているフォームのレンダリングを行います。

以下の理由により、処理インスタンスは、作成者実行モードで稼働するように設定されています。

  • 作成者実行モードの場合、パブリッシュインスタンスの未加工のフォームデータを逆複製することができます。デフォルトのデータストレージハンドラーを使用するには、逆複製機能が必要になります。 
  • AEM ワークフローは、パブリッシュインスタンスから送信される未加工のフォームデータの主要な処理手段です。TarMK ベースのデプロイメント環境の場合は、オーサースタイルのシステムで AEM ワークフローを実行することをお勧めします。

JEE 上の AEM Forms:JEE 環境内の AEM Forms は、AEM オーサーインスタンスです。また、アプリケーションサーバー上で稼働する単一の JEE スタックにまとめてデプロイされる Forms Workflow アドオンの機能でもあります。必要な場合は、Forms Workflow アドオンの機能だけを実行することもできます。JEE 上の AEM Forms は、単一サーバー環境とクラスター設定で実行することができます。    

OSGi 上の AEM Forms:OSGi 環境内の AEM Forms は、AEM Forms がデプロイされた標準の AEM オーサーインスタンスまたは AEM パブリッシュインスタンスです。  OSGi 上の AEM Forms は、単一サーバー環境、ファーム設定、クラスター設定で実行することができます。クラスターを設定できるのは、AEM オーサーインスタンスの場合だけです。

JEE 上の AEM Forms の物理的なトポロジーの例

ドキュメントサービスまたはドキュメントセキュリティ機能を使用するためのトポロジー

ドキュメントサービスまたはドキュメントセキュリティ機能だけを使用する場合は、以下のようなトポロジーを構成することをお勧めします。このトポロジーの場合、JEE サーバー上で AEM Forms のインスタンスを 1 つだけ使用することをお勧めします。必要に応じて、JEE サーバー上に AEM Forms のクラスターを作成することもできます。多くのユーザーがプログラムを使用して AEM Forms サーバーの機能にアクセスし、ユーザーインターフェイス上ではほとんど操作を実行しない場合は、このトポロジーを構成することをお勧めします。ドキュメントサービスの操作を一括して処理する場合は、このトポロジーを使用すると非常に効率的です。例えば、出力サービスを使用して、編集不可の PDF ドキュメントを毎日数百件作成するような場合に、このトポロジーを構成することをお勧めします。 

AEM Forms では、設定されたすべての機能を 1 台のサーバーで実行できますが、運用規模の計画、負荷分散、特定の機能を実行するための専用サーバーのセットアップを、実稼働環境で行う必要があります。例えば、PDF Generator サービスを使用して、1 日に数千のページと複数のアダプティブフォームをデータ取得用に変換する環境の場合、PDF Generator サービスとアダプティブフォームの機能を実行するための AEM Forms サーバーを個別にセットアップする必要があります。これにより、パフォーマンスが最適化され、各サーバーを個別にスケーリングできるようになります。

basic-features

AEM Forms のプロセス管理機能を使用する場合のトポロジー

HTML Workspace や AEM Forms アプリケーションなど、App AEM Forms のプロセス管理機能を使用する場合は、以下のようなトポロジーを構成することをお勧めします。このトポロジーでは、Forms Workflows アドオンと AEM オーサーインスタンスを同じ JEE サーバー上にデプロイすることをお勧めします。JEE サーバーは、単一のサーバーとしてセットアップすることも、クラスター構成としてセットアップすることもできます。

LiveCycle ES4 をアップグレードする場合、このトポロジーは、追加の AEM オーサーインスタンスが JEE 上の AEM Forms に組み込まれる点を除き、LiveCycle で既に構成されているトポロジーと同じになります。また、アップグレードを実行する場合も、クラスタリング要件は変わりません。クラスター環境で AEM Forms を使用していた場合は、AEM 6.4 Forms でも引き続きその環境を使用することができます。HTML Workspace と AEM Forms アプリケーションを使用して JEE の AEM Forms を新しくインストールする場合は、Forms Workflows アドオンと AEM オーサーインスタンスを同じ場所にデプロイする必要があります。

フォームデータストアは、フォームとインタラクティブ通信の最終的な処理済みデータを保存するためのサードパーティ製データストアです。このデータストアは、このトポロジーにおけるオプションの構成要素です。必要に応じて処理インスタンスを設定し、その処理インスタンスのリポジトリを最終的な記録システムとして使用することができます。 

topology_for_usinghtmlworkspaceandformsapp
後処理機能、アダプティブフォーム機能、HTML5 フォーム機能、インタラクティブ通信機能を使用することなく、JEE サーバー上の AEM Forms を使用して、HTML Workspace や AEM Forms アプリケーションなどのプロセス管理機能を実行する場合は、このトポロジーを構成することをお勧めします。

アダプティブフォーム、HTML5 フォーム、インタラクティブ通信の機能を使用する場合のトポロジー

アダプティブフォーム、HTML5 フォーム、PDF フォームなど、AEM Forms のデータ取得機能を使用する場合は、以下のようなトポロジーを構成することをお勧めします。AEM Forms のインタラクティブ通信機能を使用する場合も、このトポロジーを構成することをお勧めします。

Topology-for-using-forms-OSGi-modules

このトポロジーでは、以下に示す変更やカスタマイズを行うことができます。

  • HTML Wowkspaceアダプティブフォームアプリケーションを使用するには、AEM オーサーインスタンスが必要になります。外部の AEM オーサーサーバーを追加でセットアップする代わりに、JEE サーバー上の AEM Forms に組み込まれた AEM オーサーインスタンスを使用することができます。
  • パブリッシュサーバーが必要になるのは、OSGi 上のフォームベースワークフロー、アダプティブフォーム、フォームポータル、インタラクティブ通信を使用する場合だけです。
  • インタラクティブ通信のエージェント UI は、通常、組織内で実行されます。そのため、プライベートネットワーク内に、エージェント UI 用のパブリッシュサーバーを配置することができます。
  • JEE サーバー上の AEM Forms に組み込まれた AEM オーサーインスタンスは、OSGi 上のフォームベースワークフローと監視フォルダーで稼働させることもできます。   

OSGi 上の AEM Forms を使用する場合の物理的なトポロジーの例

データ取得機能、インタラクティブ通信機能、OSGi 上のフォームベースワークフロー機能を使用する場合のトポロジー

アダプティブフォーム、HTML5 フォーム、PDF フォームなど、AEM Forms のデータ取得機能を使用する場合は、以下のようなトポロジーを構成することをお勧めします。インタラクティブ通信機能と OSGi 上のフォームベースワークフロー機能を使用する場合も、このトポロジーを構成することをお勧めします。例えば、ビジネスプロセスワークフローで AEM インボックスと AEM Forms アプリケーションを使用する場合などです。

interactive-use-cases-af-cm-osgi-workflow

オフラインのバッチ処理で監視フォルダー機能を使用する場合のトポロジー

バッチ処理で監視フォルダーを使用する場合は、以下のようなトポロジーを構成することをお勧めします。以下の図ではクラスター環境が構成されていますが、負荷の量に応じて、AEM Forms サーバーのインスタンスを 1 つだけ使用してもかまいません。このトポロジーの場合、サードパーティ製のデータソースを、専用の記録システムとして使用することになります。このデータソースが、監視フォルダーの入力元になります。以下の図では、出力が印刷ファイル形式になっていますが、出力内容をファイルシステムに保存することも、電子メールで送信することもできます。また、別の方法で出力を使用することもできます。

Offline-batch-processing-via-watched-folders

API ベースのオフライン処理でドキュメントサービス機能を使用する場合のトポロジー

ドキュメントサービス機能だけを使用する場合は、以下のようなトポロジーを構成することをお勧めします。このトポロジーでは、OSGi サーバー上で AEM Forms のクラスターを使用することをお勧めします。多くのユーザーが API を使用して AEM Forms サーバーの機能にアクセスし、ユーザーインターフェイス上ではほとんど操作を実行しない場合は、このトポロジーを構成することをお勧めします。複数のソフトウェアクライアントを使用する場合は、このトポロジーを構成すると非常に便利です。例えば、PDF Generator サービスを使用する複数のクライアントにより、オンデマンドで PDF ドキュメントを作成するような場合です。 

AEM Forms では、設定されたすべての機能を 1 台のサーバーで実行できますが、運用規模の計画、負荷分散、特定の機能を実行するための専用サーバーのセットアップを、実稼働環境で行う必要があります。例えば、PDF Generator サービスを使用して、1 日に数千のページと複数のアダプティブフォームをデータ取得用に変換する環境の場合、PDF Generator サービスとアダプティブフォームの機能を実行するための AEM Forms サーバーを個別にセットアップする必要があります。これにより、パフォーマンスが最適化され、各サーバーを個別にスケーリングできるようになります。

Offline-API-based-Processing

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー