JSPファイルを作成する
では、プロジェクトにJSPファイルを作成しましょう。まず、プロジェクト・エクスプローラーから「myweb」内の「WebContent」フォルダを選択してください。そして[ファイル]-[新規]-[その他]メニューを選びます。現れたウインドウで、「Web」項目内にある「JSP」を選択して次へ進んでください。

続いて、JSPの詳細設定の画面へと進みます。ここで作成場所とファイル名を設定します。「親フォルダーを入力または選択」と言うところでは、保存場所となるフォルダ(WebContent)をクリックして選びます。また「ファイル名」では、「index.jsp」と入力しておきます。JSPファイルは、このように必ず「.jsp」という拡張子をつけておく必要があります。

続いてJSPテンプレートの設定画面に進みます。これは、初期状態で生成されるソースコードのテンプレートを選びます。通常は、「JSPテンプレートの使用」チェックをONにし、「新規JSPファイル(HTML)」を選んでおきましょう。
以上で「index.jsp」が作成され、このファイルが開かれてエディタで編集可能になります。作成されたJSPファイルには、初期状態でテンプレートのソースコードが記述されています。これに、必要に応じてJSPのコードを追記していけばいいわけです。
JSPソースコードを作成する
では、簡単なサンプルを作成して動かしてみましょう。「index.jsp」を次のように記述します。
<%@ page language="java" contentType="text/html; charset=windows-31j"
pageEncoding="windows-31j"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=windows-31j">
<title>JSP SAMPLE</title>
</head>
<body>
<%
out.println("これはJSPによる出力サンプルです。<br>");
%>
</body>
</html>
<body>タグ内に、<% で始まり %>で終わるタグが追記されています。その中に、Javaのソースコードらしきものが書かれていますね。これが、JSPのタグです。<% %>タグは、そのタグ内にあるテキストをJavaのコードとして解釈し実行します。このように、HTMLのコード内に特殊なタグを使ってソースコードを埋め込むのがJSPの基本スタイルです。
ここでは、out.printlnという処理を実行していますね。これは、System.out.printlnではありません。ここでのoutはSystem.outではなく、「暗黙オブジェクト」と呼ばれるものです。暗黙オブジェクトとはJSPに最初から用意されているオブジェクトで、特に使用宣言のようなものを用意しなくとも、最初からそのオブジェクトがあるものとしてコードを記述することができます。「暗黙のうちに存在が了解されているオブジェクト」というわけです。
このoutは、OutputStream(より正確には、JspWriterというJSP用のOutputStream)のインスタンスで、この中の出力用メソッドを呼び出すことで、クライアント側にHTMLのソースコードを出力することができます。JSP内からテキストを出力するときには、このように暗黙オブジェクトoutを利用するのが基本です。
実は、JSPのタグは他にももう1箇所あります。それは一番最初の<%@ page ~ %>というタグです。このように「<%@」で始まり「%>」で終わるタグは、「ディレクティブ(指令)」と呼ばれ、これを実行するサーブレットコンテナにさまざまな情報を指定する目的で使われます。ここで使っているものは「pageディレクティブ」と呼ばれるもので、使用言語、コンテンツの種類、エンコーディング方式などの情報を記述してあります。
ここにあるpageディレクティブのタグの記述は、「最初に必ず記述しておくタグ」と考えておきましょう。WTPの場合、テンプレートにより初期状態で記述されるので、あまり意識する必要はありませんが、「こういうタグがこういう働きをしている」という程度には覚えておきたいです。
プロジェクトを実行する
では、作成したJSPファイルにWebブラウザからアクセスしてみましょう。JSPファイルを利用できるようにするためには、「サーブレットコンテナの起動」「サーブレットコンテナの公開ディレクトリにWebアプリケーションを配置」「Webブラウザで指定のURLにアクセス」といった手順が必要になります。が、WTPでは、プロジェクト(あるいはJSPファイル)を実行するだけで、一連の作業をすべて自動で行ってくれます。
プロジェクト・エクスプローラーから「index.jsp」を選択し、[実行]-[実行]-[サーバーで実行]メニューを選んでください。画面に「新規サーバーの定義」というダイアログが現れます。ここで使用するサーバー設定を選択します。ここでは[既存のサーバーを選択]を選び、「使用するサーバーの選択:」から「Tomcat v5.5サーバー @localhost」を選んでください。また、その下にある[サーバーをプロジェクトのデフォルトに設定]のチェックもONにしておくとよいでしょう。
次へ進むと、「プロジェクトの追加および除去」という表示になります。これは、サーバーに追加する(公開する)プロジェクトを設定するためのものです。公開する「myweb」プロジェクトは自動的に公開する「構成プロジェクト」に追加されているはずですので、そのまま次へ進んでかまいません。また次の「タスクの選択」表示では、特に実行するタスクはないのでそのまま終了します。
終了すると、Tomcatサーバが起動し、そこでmywebプロジェクトが公開されます。そして「内部Webブラウザー」と呼ばれるブラウザ・ビューがエディタ部分に開かれ、Tomcatサーバにアクセスして選択した「index.jsp」を表示します。このブラウザ・ビューに「これはJSPによる出力サンプルです。」といったテキストが表示されたでしょうか。これが、作成したJSPのページです。

ブラウザ・ビューのアドレス表示部分を見てみると、次のようなURLにアクセスしていることが分かります。
http://localhost:8080/myweb/index.jsp
前回も触れましたが、「localhost:8080」というのがTomcatサーバです。通常、サーブレットコンテナはHTMLとは異なるポートを使っています。Tomcatの場合、8080ポートを利用しているため、アクセスの際には「サーバ名:8080」という形でサーバの名前とポート番号を指定します。
その後に「myweb」というディレクトリが指定されていますね。WTPでは、プロジェクトのWebアプリケーションのディレクトリ(WebContent)を、Tomcatのプロジェクト名のディレクトリに公開するようになっています。つまり、「myweb」プロジェクトのWebContentが、Tomcatの「サーバ名:8080/myweb/」という場所に公開されるわけです。


