3.1.2 クライアント/サーバ間の処理の流れ
ダイレクト印刷を利用したアプリケーションのクライアントとサーバの間では以下のような処理が行われます。
- ブラウザから印刷要求を行います。
- アプリケーション開発者が実装する印刷アプリケーションで印刷データの出力用ストリームとしてPDFDirectPrintStreamクラスをインスタンス化し、必要な設定を行います。続いてbiz-StreamライブラリのPDF生成エンジンをインスタンス化し、出力先として先に生成したPDFDirectPrintStreamクラスのインスタンスを指定します。
- PDF生成エンジンに対してPDFの生成を指示します。生成されたPDFはPDFDirectPrintStreamクラスのインスタンスを経由して、SPPファイル形式の印刷データとしてブラウザにダウンロードされます。
- ブラウザはダウンロードした印刷データに対してダイレクト印刷クライアントモジュールを呼び出します。
- 呼び出されたダイレクト印刷クライアントモジュールは印刷データからプリンタに制御情報を取り出し、プリンタの選択およびその他制御を行います。その後、印刷データを印刷し、指定されていれば印刷データをPDFファイルとして保存します。また、この際に動作状況がログに記録されます。
- 印刷応答URLが指定されている場合、ダイレクト印刷クライアントモジュールは印刷および保存処理が完了すると、その結果をGETメソッドで指定されたURLに送信します。
- アプリケーション開発者が実装する印刷結果を処理するサーブレットは受け取った印刷結果にしたがって処理を行います。