ColdFusionを使って作成するのは、“動的な処理が含まれるWebページ(以下、動的Webページ)”となります。ただ、初めてWebアプ リケーションの作成を体験する人にとっては、動的Webページという言葉に馴染みが無いと思います。ホームページを作成するソフト(HTMLエディター) で作成したWebページとの違いは何でしょうか?
HTMLエディターで作成するWebページは、一般的には“静的Webページ”になります。これは、拡張子.htmや.htmlでページを作成して Webサーバーに配置し、ブラウザからそのページに呼び出しがあった時に、ページの内容をブラウザに返すという動きになります。処理の流れを下記に紹介し ます。
図の上部にはWebサーバーと呼ばれるものがあります。これは、ブラウザのアドレスに指定したURLの呼び出し先だと思って下さい。図の下半分は呼 び出し元、つまり、普段みなさんがブラウザを使ってインターネットをブラウジングしているところを想像して下さい。図には、1.〜4.で処理の流れ (WebサーバーにHTMLページのリクエストをしている様子)を書いています。
処理の内容を見てみると
となります。
Webサーバーは、呼び出しのあったページをブラウザに戻すだけの動きとなるため、何度呼び出しても同じページ内容が戻ります (JavaScriptを使って何らかの処理をする事もありますが、JavaScriptは上記4、ブラウザにページの情報が戻されてからブラウザ内で動 作するので、上記3.の時点では同じページ内容です)。
“静的Webページ”でページを作っていると、内容を変えたい時、例えば、商品の販売サイトで商品が売り切れてしまった時や、社員情報を表示するイントラ サイトで、社員の退職や異動があったときなどはWebページを作り直して、Webサーバーに置いたページを置き換えるという作業が必要です。めったに変更 しないページだったら良いですが、たびたび変更が生じた場合には、作業者にかなりの負担となります。
商品の情報や在庫情報、社員情報などは一般的にはデータベースでデータを管理しています。データベースに入っている情報を利用すれば、例えば在庫が 無くなった時には、在庫なしとWebページにできるように表示する事ができますし、商品が追加されたり削除された時も、データベースの商品一覧の情報をも とに、最新の情報をWebページに反映することが出来ます。これが、ColdFusionを使って動的Webページを作っていく理由の一つとなります。そ れでは動的Webページの処理の流れも紹介します。
静的Webページのリクエストと基本的な動作(呼び出しと返信)は同じですが、Webサーバー側にColdFusionの処理が追加されているのが分かります。難しくはありません。下記の1.2.5.6は、静的Webページと同じ動きです。違いは、3.4.になります。
静的Webページは、Webサーバーが置かれているページをそのままブラウザに戻しているのに対し、動的Webページは、Webサーバーから ColdFusionに処理を依頼し、ColdFusionはそのページを処理します。そして処理が終わったら、処理の結果をWebサーバーに戻し、 Webサーバーは、ブラウザに処理の結果を戻している流れとなります。
WebサーバーがColdFusionに処理を渡すきっかけとなるのが、呼び出しているページの拡張子です。上記の図を見て頂くと、 list.cfmというページの呼び出しを行っています。ColdFusionと連携するWebサーバーは、拡張子が.cfmのファイルが来ると、それは ColdFusionで処理を行うという事を認識していますので、ColdFusionに処理を渡し、結果が戻ってくるのを待ちます。
「ColdFusionはWebサーバーと連携して動作している」、そして、「ColdFusionの処理が終わってから、呼び出し元のブラウザに 結果が戻っている」ことから、ColdFusionは、サーバーサイドのWebアプリケーションサーバーとして動作する製品になる、という事を覚えておき ましょう。