このドキュメントのサンプルと例は、JEE 環境の AEM Forms のみを対象としています。
フォームをレンダリングする際に、Forms サービスのパフォーマンスを最適化する実行時のオプションを設定できます。Forms サービスのパフォーマンスを向上させるために実行できるもう 1 つのタスクは、XDP ファイルをリポジトリに格納することです。ただし、この節では、このタスクの実行方法については説明しません。(Java クライアントライブラリを使用したサービスの呼び出しを参照。)
AEM Forms サービスについて詳しくは、『AEM Forms サービスリファレンス』を参照してください。
フォームのレンダリング中に Forms サービスのパフォーマンスを最適化するには、次のタスクを実行します。
プロジェクトファイルの組み込み
必要なファイルを開発プロジェクトに含めます。Java を使用してクライアントアプリケーションを作成する場合は、必要な JAR ファイルを含めます。Web サービスを使用している場合は、プロキシファイルを必ず含めてください。
Forms Client API オブジェクトの作成
Forms Service Client API 操作をプログラムで実行する前に、Forms サービスクライアントを作成する必要があります。Java API を使用している場合は、FormsServiceClient
オブジェクトを作成します。Forms Web サービス API を使用している場合は、 FormsService
オブジェクトを作成します。
パフォーマンスの実行時オプションを設定する
次のパフォーマンス実行時オプションを設定して、Forms サービスのパフォーマンスを向上させることができます。
true
に設定すると、フォームは状態情報なしでレンダリングされます。状態情報は、インタラクティブフォームをエンドユーザーにレンダリングし、そのユーザーがフォームに情報を入力して、そのフォームをFormsサービスに送り返す場合に必要です。次に、Forms サービスは計算処理を実行し、フォームをレンダリングしてユーザーに戻し、結果がフォームに表示されます。フォームが状態情報なしで Forms サービスに送り返された場合、XML データのみが使用可能になり、サーバーサイドの計算は実行されません。フォームをレンダリング
パフォーマンスオプションを設定した後にフォームをレンダリングするには、パフォーマンスオプションを指定せずにフォームをレンダリングする場合と同じアプリケーションロジックを使用します。
フォームデータストリームをクライアント web ブラウザーに書き込む
Forms サービスがフォームをレンダリングすると、クライアントの Web ブラウザーに書き込む必要があるフォームデータストリームが返されます。クライアント Web ブラウザーに書き込まれると、フォームはユーザーに対して表示されます。
関連トピック
Forms をレンダリングする web アプリケーションの作成
Forms API(Java)を使用して、最適化されたパフォーマンスでフォームをレンダリングします。
プロジェクトファイルを含める
adobe-forms-client.jar などのクライアント JAR ファイルを Java プロジェクトのクラスパスに含めます。
Forms Client API オブジェクトの作成
ServiceClientFactory
オブジェクトを作成します。FormsServiceClient
オブジェクトを作成するには、コンストラクターを使用して ServiceClientFactory
オブジェクトを渡します。パフォーマンスの実行時オプションの設定
PDFFormRenderSpec
オブジェクトを作成します。PDFFormRenderSpec
オブジェクトの setCacheEnabled
メソッドを呼び出して、true
を渡します。PDFFormRenderSpec
オブジェクトの setLinearizedPDF
メソッドを呼び出して、true.
を渡します。フォームのレンダリング
FormsServiceClient
オブジェクトの renderPDFForm
メソッドを呼び出して、次の値を渡します。
com.adobe.idp.Document
オブジェクト。データを結合しない場合は、空の com.adobe.idp.Document
オブジェクトを渡します。PDFFormRenderSpec
オブジェクト。URLSpec
オブジェクト。java.util.HashMap
オブジェクト。オプションのパラメーターです。フォームにファイルを添付しない場合は null
を指定できます。renderPDFForm
メソッドは、クライアントの Web ブラウザーに書き込む必要のあるフォームデータストリームを含む FormsResult
オブジェクトを返します。
フォームデータストリームをクライアント web ブラウザーに書き込む
javax.servlet.ServletOutputStream
オブジェクトを作成します。FormsResult
オブジェクトの getOutputContent
メソッドを呼び出すことによって、com.adobe.idp.Document
オブジェクトを作成します。com.adobe.idp.Document
オブジェクトの getInputStream
メソッドを呼び出して、java.io.InputStream
オブジェクトを作成します。InputStream
オブジェクトの read
メソッドを呼び出して、バイト配列を引数として渡します。javax.servlet.ServletOutputStream
オブジェクトの write
メソッドを呼び出して、フォームデータストリームをクライアント web ブラウザーに送信します。バイト配列を write
メソッドに渡します。関連トピック
クイックスタート(SOAP モード):Java API を使用したパフォーマンスの最適化
Forms API(web サービス)を使用して、最適化されたパフォーマンスでフォームをレンダリングします。
プロジェクトファイルを含める
Forms Client API オブジェクトの作成
FormsService
オブジェクトを作成し、認証値を設定します。
パフォーマンスの実行時オプションの設定
PDFFormRenderSpec
オブジェクトを作成します。PDFFormRenderSpec
オブジェクトの setCacheEnabled
メソッドを呼び出して、true を渡します。PDFFormRenderSpec
オブジェクトの setStandAlone
メソッドを呼び出して、true を渡します。PDFFormRenderSpec
オブジェクトの setLinearizedPDF
メソッドを呼び出して、true を渡します。フォームのレンダリング
FormsService
オブジェクトの renderPDFForm
メソッドを呼び出して、次の値を渡します。
BLOB
オブジェクト。データを結合しない場合は、null
を渡します。PDFFormRenderSpecc
オブジェクト。URLSpec
オブジェクト。java.util.HashMap
オブジェクト。これはオプションのパラメーターで、 フォームにファイルを添付しない場合に、null
を指定します。com.adobe.idp.services.holders.BLOBHolder
オブジェクト。これは、レンダリングされた PDF フォームを保存するために使用されます。javax.xml.rpc.holders.LongHolder
オブジェクト。(この引数は、フォームのページ数を保存します)。javax.xml.rpc.holders.StringHolder
オブジェクト。(この引数はロケール値を格納します)。com.adobe.idp.services.holders.FormsResultHolder
オブジェクト。renderPDFForm
メソッドは、最後の引数値として渡される com.adobe.idp.services.holders.FormsResultHolder
オブジェクトに、クライアント web ブラウザーに書き込む必要のあるフォームデータストリームを入力します。
フォームデータストリームをクライアント web ブラウザーに書き込む
com.adobe.idp.services.holders.FormsResultHolder
オブジェクトの value
データメンバーの値を取得して、FormResult
オブジェクトを作成します。javax.servlet.ServletOutputStream
オブジェクトを作成します。FormsResult
オブジェクトの getOutputContent
メソッドを呼び出して、フォームデータを含む BLOB
オブジェクトを作成します。BLOB
オブジェクトの getBinaryData
メソッドを呼び出して、入力します。このタスクは、FormsResult
オブジェクトのコンテンツをバイト配列に割り当てます。javax.servlet.http.HttpServletResponse
オブジェクトの write
メソッドを呼び出して、フォームデータストリームをクライアント web ブラウザーに送信します。バイト配列を write
メソッドに渡します。関連トピック
Base64 エンコーディングを使用した AEM Forms の呼び出し