目次へ

2.2. application/config/pageContext/page

「application」はWWWアプリケーション全体の設定や情報の取得を行うために用います。その利用方法はサーブレットの場合と同じです。以下のサンプルでは、WWWアプリケーション全体の設定を読み込んでいます。

<% String serverName=application.getInitParameter("serverName"); %>

「config」はJSPページにおける設定を読み込むために用います。サーブレットにおいても「ServletConfig」を用いて設定の読み込みを行うのですが、「GenericServlet」「HttpServlet」がこのインタフェースを実装していたため、それを意識する必要がありませんでした。設定の読み込みは以下のようにします。

<% String encoding=config.getInitParameter("encoding"); %>

JSPページに対する設定も「WEB-INF/web.xml」を用いて行います。<servlet>タグの<servlet-class>の部分を<jsp-file>に変えて指定します。<jsp-file>では、WWWアプリケーションのルートディレクトリからのフルパスでJSPファイルを指定します。

<servlet>
  <servlet-name>TopPage</servlet-name>
  <jsp-file>/jsp/top.jsp</jsp-file>
  <init-param>
    <param-name>encoding</param-name>
    <param-value>EUC-JP</param-value>
  </init-param>
</servlet>

「pageContext」はJSPページで使用されるオブジェクトを管理するクラスです。暗黙オブジェクトも管理されています。「pageContext」には任意のオブジェクトを登録できますが、これは当該JSPページ内でのみ有効になります。またJSPページから「include」「forward」するためのメソッドも提供しています。以下は「pageContext」に任意のオブジェクトを登録するサンプルです。

<% Animal animal=new Animal(); %>
<% pageContext.setAttribute("animal",animal); %>

「page」はJSPページ自身のインスタンスを表します。「javax.servlet.jsp.HttpJspPage」のインスタンスですが、「java.lang.Object」にキャストされています。あまり利用する事はありません。

(実習課題1)

以下のJSPページを作成しなさい。

  • WWWアプリケーション全体の設定およびJSPページに対する設定を取得し、表示する事。設定は任意のものでよい。

解答例はこちら

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp