PDFによるJ2EEリッチクライアント計画(1) Page 1/3
J2EEのMVCモデルを変革する
インテリジェントドキュメント“PDF”の正体とは?
アドビ システムズ小島 英揮
2005/9/22
リッチクライアント製品と認識されることは少ないが、PDFは業務システムのクライアントにリッチな機能を提供する機能を持っている。本連載では、J2EEのクライアントにPDFを採用することで、開発者がどのようなメリットを得られるのか、全4回の記事で紹介していく。(編集部)
■進化するPDFフォーマット
注1 PDFの電子封筒的な利用例
PDFを電子封筒的に利用したサンプルデータを用意した。下記リンクよりダウンロードして確かめてほしい(別ウィンドウで開きます。Adobe Reader 7.0/Acrobat 7.0でご覧ください)。
・PDFの電子封筒サンプル
またFLASHなどのマルチメディアデータを埋め込んだリッチかつインタラクティブなプレゼンテーションの手法としてPDFを利用することもできる。以下のサンプルPDF
- http://www.adobe.co.jp/products/acrobat/pdfs/a7_tryme_gb.pdf
(PDF文書、1.72Mbytes、Flashプラグイン要。別ウィンドウで開きます。Adobe Reader 7.0/Acrobat 7.0でご覧ください)
を見ていただければ、皆さんのPDFに対するイメージは「静的なドキュメント」から「インテリジェントな情報のコンテナ」へと大きく変化するだろう。さらに、近年のシステム構築には欠かせないセキュリティについても、電子署名やタイムスタンプといった情報をセキュアにするための各種機能を実装可能なフォーマットへと進化(現在のPDFのバージョンは1.6)を遂げている。
■PDFの持つマルチレイヤ
実際のところ、PDFをこうした情報のコンテナとして活用している用途も多くなっている。最も顕著なのが、官公庁・自治体における電子申請のエリアだろう。官公庁においてはフォーム(様式)への記入内容だけでなく、フォームのレイアウトや添付書類といった情報も必要である。PDFフォームを利用した場合、添付書類や記入情報、フォームのレイアウトというものは、すべて1つのPDFファイルの中に格納される。ワープロや表計算ソフトで作成されたフォームと異なり、フォームレイアウトや記入データなどは「PDF内の異なるレイヤ」に分けて格納される(図1)。それ故、フォームを記入中に、誤ってフォームレイアウトを壊してしまうという現象は起きない。
図1 PDFのマルチレイヤ機能 独立した各レイヤに、フォーム入力データやファイル添付などの情報コンテナ機能やセキュリティに必要な情報を格納できる。 |
また、すべての情報を格納したPDFに電子署名をかけることにより、セキュアなデータパッケージとしてサーバ側に送信することが可能である。
一方、PDFを受け付けて処理するサーバ側も、PDFというインテリジェントな電子ドキュメントで情報を管理するメリットは大きい。電子署名されたPDFファイルだけを管理すれば、だれが、何を、どのように申請したかが管理できる。そのための複雑なシステムなどは特に必要としない。また、記入データだけをデータベースやワークフローシステムにチェックインさせたい場合には、PDFファイルから特定のデータをXMLなどのトランザクションデータとしてオンデマンドで抽出することができる。実際に多くの自治体でこのようなPDFとXMLを活用したドキュメントとシステムの統合を図っている注2。
注2 自治体に導入されたPDFとXMLによるシステム構築事例
大阪府内の市町村が提供する地域共同利用電子申請受付システム(ささっとOSAKA)の事例などが紹介されている(別ウィンドウで開きます)。
・http://www.adobe.co.jp/enterprise/customers.html
同様のことをJava/Webベースの仕組みで行うとどうだろう。上記のように1つの処理(申請)で、複数の情報が必要な場合、トランザクションデータとしてそれぞれを送信した後、フォームレイアウト、記入データ、添付ファイルなどの情報を関連付けられた別ファイルとして管理する必要がある。そのためには、申請システムごとに固有のデータ管理の仕組みが必要で、特に長期間のデータ保管を要求される場合においてはシステムそのものの継続性にデータの長期保存、原本性が依存することになり、コスト的にもリスクヘッジ的にも課題が多い。(次ページへ続く)
1/3 |
INDEX |
||
PDFによるJ2EEリッチクライアント計画(1) Java/Web系のMVCモデルを変革する“PDF”の正体とは? |
||
Page1 進化するPDFフォーマット PDFの持つマルチレイヤ |
||
Page2 MVCモデルと比べ開発・実装は容易になる ダイナミックフォームやオフライン運用、Webサービスとの統合を実現 |
||
Page3 業務におけるドキュメントの重要性 動的なセキュリティへの対応 |
- GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本 (2017/7/12)
資料を作る際に、「グラフ」は必要不可欠な存在だ。今回は、「グラフの新規作成」「グラフの変更」「グラフの削除」について解説する - GET/POSTでフォームから送信された値をPHPで受け取る「定義済みの変数」【更新】 (2017/7/10)
HTMLのフォーム機能についておさらいし、get/postメソッドなどの内容を連想配列で格納するPHPの「定義済みの変数」の中身や、フォーム送信値の取り扱いにおける注意点について解説します【PHP 7.1含め2017年の情報に合うように更新】 - PHPのfor文&ループ脱出のbreak/スキップのcontinue【更新】 (2017/6/26)
素数判定のロジックからbreak文やcontinue文の利点と使い方を解説。for文を使ったループ処理の基本とwhile文との違い、無限ループなども併せて紹介します【PHP 7.1含め2017年の情報に合うように更新】 - Spreadsheetデータの選択、削除、挿入、コピー、移動、ソート (2017/6/12)
Spreadsheetデータの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|
|