クライアントとサーバーの間の交換プロトコルについて詳しくは、「JViews Web アプリケーションのクライアント/サーバー交換プロトコル
」を参照してください。
JViews Web アプリケーション・クライアント
クライアント・サイドでは、Rogue Wave® JViews Web アプリケーションを使用する際に必要になるソフトウェアは、Internet Explorer®
や Firefox ®
などの標準 Web ブラウザーだけです。つまり、JViews Web アプリケーションでは、ブラウザーとともにインストールする特殊なプラグインは一切必要ありません。これにより、JViews Web アプリケーションの配布が非常に簡単になりました。
JViews Web アプリケーションの動作を理解するには、ビューとインタラクターという理解すべき 2 つの重要な概念があります。
次の図は、代表的な JViews Web アプリケーションを示しています。
ビュー
ビューとは、グラフィカル表示が現れるブラウザーの領域です。次の例では、ビューには、JViews ダイアグラムの一部が表示されています。異なるビューの概念が実装されていて、チャート、ダイアグラム、地図、ガント・チャートなど、特殊なグラフィック・ビューを表示するように設計されています。
HTML レベルでは、ビューは
<div>
、<img>
、および <script>
要素によって実装されます。<img>
要素は、Web アプリケーション・サーバーで稼働中の JViews サーブレットによって提供されたグラフィック・ビューを表示するために使用されます。JViews サーブレットは、JPEG
、PNG
、または GIF
でイメージを生成するので、生成されたイメージは標準 Webブラウザーで表示できます。ビューは、JViews サーブレットとのネットワーク通信を扱う 1 セットの JavaScript クラスでもあります。例えば、グラフィック・ビューがズームされる場合、ビューが正しいパラメーターを JViews サーブレットに送り、戻されたイメージを表示する必要があります。実装について詳しくは、IlvView JavaScript クラスを参照してください。
インタラクター
インタラクターは、graphic ビューとのユーザー・インタラクションを扱う JavaScript クラスで、ビューを対話可能にします。ごく一般的なインタラクターにズーム・インタラクターがあります。このインタラクターは、マウス・イベントを取り込み、ビューに機能して表示を拡大または縮小します。
別の代表的インタラクターに、選択インタラクターがあります。これは、ビュー内の 1 つ以上のグラフィック・オブジェクトを選択できるようにします。例えば、選択インタラクターは次のタスクを実行します。
- ビュー内のマウス・クリックなどのマウス・イベントを取り込みます。
- ネットワークを通じて JViews サーブレットと通信し、選択されたオブジェクトを検出します。
- 選択されたグラフィック・オブジェクトを示すフィードバックをビューに表示します。
一部のインタラクターは、画面にグラフィック要素を描画して、フィードバックを表示します。こうしたフィードバックは、使用されるブラウザーに応じて
VML
または SVG
で描画されます。JViews は、自動的に正しいテクノロジーを検出して画素を描画するので、余分なプラグインは不要です。JViews サーブレットの実装
JViews サーバー・サイド・サポートは、Java™
サーブレット・テクノロジーをベースにしています。サーブレットは、Web アプリケーション・サーバーで動作する Java プログラムで、Web ブラウザーからの HTTP 要求と Web サーバー上のアプリケーションまたはデータベースとの間の中間レイヤーとして機能します。サーブレットのジョブは、HTTP クライアント・プログラムからの HTTP 要求を読み込んで、解釈し、その結果のドキュメント (ほとんどの場合 HTML ページ) を生成することです。サーブレット・テクノロジーについて詳しくは、JavaSoft™
サイト http://java.sun.com/products/servlet を参照してください。
サーバー・サイドでは、HTTP 要求が受信されると、JViews サーブレットが JViews ダイアグラマー、チャート、ガント・チャートなどの JViews グラフィック・エンジンをベースにして、グラフィック・ビューをレンダリングし、
JPEG
、PNG
、GIF
イメージで表示をエンコードします。次の図に示すとおりです。すぐに使用可能なサーブレットが、JViews によって提供されています。JViews チャート、ダイアグラマー、ガント・チャートなどの JViews グラフィック・コンポーネントごとに、イメージのレンダリングとインタラクションの処理のために特殊なサーブレットが実装されています。具体的な JViews サーブレットの実装例については、「IlvManagerServlet 」を参照してください。