はじめに
「Caché Server Pages(CSP)」は、Cachéデータベースと連携したWebアプリケーションを、Caché ObjectScriptとJavaScriptを用いて構築できる、Caché独自の開発環境です。Cachéデータベースを使用した動的なWebページを容易に生成可能で、セッション管理・ページ認証・Webページからのインタラクティブなデータベース処理の事項など、さまざまな機能が利用できます。連載の第8回目は、このCSPを使った、簡単なWebアプリケーション構築について解説しましょう。
対象読者
- アプリケーション/システム開発をしている人
- データベース関連の開発およびメンテナンスをしている人
- JavaやC#でプログラミングしている人
CACHÉ Server Pagesの特徴
Caché Server Pages(CSP)は、冒頭で述べたように、Webアプリケーションの構築から管理までの統合環境です。CSPを適切に実行させる環境は、CSPコンポーネントと呼ばれ、下表の構成となっています。
コンポーネント | 役割 | 構成 |
Webサーバ | アクセスの許可。スタティックコンテンツ(非CSP)の提供。 | 仮想ディレクトリ。アクセス管理。スタティックコンテンツの位置。 |
CSPゲートウェイ | CSP要求を、選択されたCSPサーバへ配信。 | 接続可能なCSPサーバ。タイムアウトとフェイルオーバーに関する情報。 |
CSPサーバ | CSP要求の処理。CSPファイルからのCSPクラスの生成。 | URIディレクトリとアプリケーションのマッピング。CSPファイルの場所。CSPアプリケーションの既定の設定。 |
CSPは、Webブラウザから送られてきたHTTP要求に応答し、どのHTTP要求を処理すべきかを自動的に決め、それらをCachéサーバの適切なクラスへ配信し、要求の情報を使いやすいオブジェクトにまとめます。こうした処理体系である「CSPアーキテクチャ」は、下図のようなイベントフローとなっています。この図にあるWebサーバは、Caché固有のものではなく、インターネットインフォメーションサービス(IIS)やApacheを利用します。
CSPを使えば、データベースと連動するWebアプリケーションを短期間で構築できるようになりますが、それよりも大きなメリットは、Webページデザインとデータベースへのアクセス処理を分離し、それぞれの担当者が得意とする分野での分業が可能となることです。また、CSPには、Webアプリケーションになくてはならない「セッション管理機能」(一定時間内に、特定のクライアントから特定のアプリケーションに送信される一連の要求を自動的に管理する機能)が組み込まれており、その実装から解放され、本来の仕事に多くの時間を割り振ることが可能となります。
それでは、CSPを利用したWebアプリケーション構築について、解説を進めていきましょう。なお、本稿と併せて、Cachéのインストールと共に自動的にインストールされるCSPのサンプルページ「CSP Samples Menu」(http://localhost:57772/csp/samples/menu.csp)も、ぜひ参照してください(下図参照)。
CACHÉ Server Pageの構成情報の設定
CSPそのものはCachéと同時に自動的にインストールされますが、利用する前に、CachéサーバとWebサーバにおいて設定が必要な項目があります。それぞれについて簡単に触れておきましょう。
CACHÉサーバでの設定内容
Cachéサーバでは、次の2点の設定を行う必要があります。
- ネームスペースの設定
- CSPアプリケーションの設定
この2点とも「システム管理ポータル」を利用して設定します。上記の「CSP Samples Menu」では、デフォルトのSAMPLESネームスペースを利用しますし、CSPアプリケーションは既に登録済みですが、ユーザー独自のアプリケーションを構築する際には、この2点の設定が必要となります。参考までに、「システム管理ポータル」の「新規CSPアプリケーション作成」画面を掲載します。
Webサーバでの設定内容
ここでは例として、IISで設定が必要な情報を挙げます(上記のCachéサーバの設定同様、サンプルを使う限りにおいては必要ありません)。
- 仮想ディレクトリの作成
- アプリケーションマッピングの作成
- CSPゲートウェイへの管理情報設定
参考までに、IISに設定されたCSP仮想ディレクトリのツリー表示画面を掲載します。
ページの都合上、設定内容の詳細は割愛しますが、本格的にCSPアプリケーションを作成する際には、「ドキュメント」にある「Caché 開発ガイド」-「Caché Server Pages (CSP) の使用法」を熟読してください。