このセクションでは、次の内容を含む JSP の基本構文について説明します。
JSP には通常、HTML テキストと JSP 要素の両方が使用されます。JSP 要素は JRun により解釈されます。JSP 要素からの出力はすべて、HTML テキストとともにクライアントに返されます。
JSP では、テンプレート テキストは JSP 要素の外側にあるテキストなので、JRun によって解釈されることはありません。テンプレート テキストは、変更されることなく、クライアントに直接返されます。JSP にある HTML テキストは、すべてテンプレート テキストと見なされます。
たとえば、<%
タグと %>
タグの間にある Java コードを除いて、次のページにあるものはすべて、テンプレート テキストと解釈されます。
<html>
<head> <title>Greetings</title> </head> <body> <% for (int i=0; i < 5; i++) out.println("<h1>Hello World!</h1>"); %> </body> </html>
HTML では通常、空白文字は重要ではありません。JSP ファイルのテンプレート コードに含まれる空白文字はすべて、JSP ファイルに入力されているとおりにクライアントに返されます。
開始タグと終了タグ、およびこれらのタグで囲まれた本文を持つ JSP 要素については、同じファイルにこの 2 つのタグを入れる必要があります。開始タグと終了タグを別々のファイルに入れることはできません。
たとえば、JSP スクリプトレットの構文は <%
scriptlet %>
です。開始タグ (<%
) と終了タグ (%>
) は両方とも同じファイルになければなりません。
JSP 要素に対する属性値はすべて、一重引用符または二重引用符を使用して引用する必要があります。たとえば、次の例にある page
要素により、属性 contentType
を使用して、JSP の出力の MIME タイプが text/plain
に設定されます。
<%@ page contentType = "text/plain" %>
属性値自体に同じタイプの引用符 (一重引用符または二重引用符) が含まれている場合は、引用符の前にエスケープ文字 (¥) を付けます。エスケープ文字の次に来る文字は、JSP パーサーでは無視されます。属性の引用符には、次のエスケープ シーケンスを使用します。
また、引用符に HTML 文字参照を使用することもできます。たとえば、属性値では二重引用符の代わりに、文字参照 "
を挿入します。
属性値の引用符をエスケープし、さらに JSP の別の領域では次のような文字をエスケープする必要があります。
定数 %>
は %
¥>
でエスケープします。
定数 <%
は <
¥%
でエスケープします。
%>
は %
¥>
でエスケープします。
<%
は <
¥%
でエスケープします。
JSP のコメントには、次の 2 種類を使用できます。クライアントに返されない JSP 自体に対するコメントと、ページの出力の一部としてクライアントに返されるコメントです。
JSP コメントは、JSP 自体に情報を追加するために使用されます。このコメントが JSP の出力の一部としてクライアントに出力されることはありません。
<%-- コメント文字列... --%>
また、ページで使用されているスクリプト言語のコメント構文を使用して、コメントを追加することもできます。たとえば、ページのスクリプト言語として Java を使用している場合、次の形式でコメントを追加できます。
<% /**
Java コメント
**/ %>
JavaScript で記述されたスクリプトにコメントを入れる場合も、同様の構文を使用します。
クライアントに返される JSP の応答出力に表示されるコメントを生成するには、HTML コメント構文を使用します。構文は次のとおりです。
<!-- コメント -->
コメント内部に JSP 式を入れることにより、動的なコメントを作成できます。次の例では、実行時に評価される式の入ったコメント文字列がクライアントに出力されます。
<%! String PageName = "Example Comment Page"; %>
... <!-- ページに対するコメント:<%= PageName %> -->
JSP 要素では、相対 URL 指定を使用して、別の JSP、Java サーブレット、同じページにある別のエンティティなどを参照できます。参照元 JSP での URL の指定方法に応じて、URL を参照元 JSP を含むアプリケーション、または参照元 JSP の場所に相対させることができます。
myErrorPage.jsp
参照元 JSP の位置に相対する myErrorPage.jsp
が参照されます。この場合、参照元
ページと同じディレクトリにある myErrorPage.jsp
ページが検索されます。
../myErrorpage.jsp
参照元 JSP の位置に相対する myErrorPage.jsp
が参照されます。この場合、参照元
ページの親ディレクトリにある myErrorPage.jsp
ページが検索されます。
/errorPages/myErrorpage.jsp
参照の先頭に「/」を付けると、参照元 JSP を含むアプリケーションに相対する
myErrorpage.jsp
が検索されます。JSP はすべて、1 つのアプリケーションに含ま
れます。アプリケーションを設定する手順の一部として、「/」にマッピングされる
ディレクトリを定義する必要があります。