JSP 1章 JSPの基本
- 1.1. JSPとは
- 1.2. JSPの動作
- 1.3. ディレクティブとスクリプト
1.2. JSPの動作
この節ではJSPの動作について説明します。JSPは直接J2EEコンテナに解釈され実行されるのではなく、一旦Servletのプログラムに変換されます。この変換は最初にJSPファイルに対する要求があったときに実行され、これによりServletのソースプログラムが生成されます。
ソースプログラムの生成が完了すると、コンパイルされServletのオブジェクトファイルが生成されます。ここから先の動作はServletと同じく、クライアントからの要求ごとにスレッドが生成され、そのスレッド内で処理が実行されます。JSPファイルが更新された場合には、最初のステップ(Servletプログラムへの変換)から再度処理されます。(Tomcatでは最初に要求があった時ではなく、予めServletプログラムへ変換しコンパイルする事も可能です。)
実際にコンテナ上で実行されるのはJSPを変換したServletプログラムであるため、JSPはデバッグが難しいという難点を抱えています。Tomcat4でかなり改善されましたが、それでもServletより難しいです。そのため、変換されたServletプログラムからJSPのどの部分でエラーが発生しているのか、類推しなければならない場面が多々あります。Tomcat4では、
{Tomcatのインストールディレクトリ}/work/
以下に変換後のプログラムファイル、およびコンパイル後のオブジェクトファイルが存在します。
(実習課題2)
実習課題1で実行したサンプルプログラムを変換したServletプログラムを確認しなさい。