JSPページでのTilesの使用

アプリケーションでTilesを使用するには、次の作業を実行する必要があります。

Strutsアプリケーションでは、定義を挿入するために別のJSPページを作成せずに、Tiles定義に直接移動できます。これを実現するには、ページのフォワード・アクションとしてTiles定義を「forward」プロパティとして指定します。Tiles定義への移動を参照してください。

JSFおよびStrutsアプリケーションでは、Tilesを含んでいるJSPページを次の2つの方法で作成できます。

コンテンツ・ページおよびテンプレートの準備

  1. アプリケーションのビュー・レイヤーに使用するプロジェクトにTilesサポートを追加します。「プロジェクトへのTiles定義ファイルの追加」を参照してください。

  2. Webページのレイアウトを定義するテンプレート・ページを作成します。「Tilesテンプレートの作成」を参照してください。

  3. JSPページに表示するコンテンツを保持するJSPページを作成します。アプリケーションへのJSPページの追加を参照してください。

  4. 一般的には、組織のヘッダーに対して1ページ、ページの最後のテキストに対して1ページ、各メニューに対して1ページずつ、そして使用する各本文セクションに対して1ページずつページを作成します。

  5. JSP/HTMLビジュアル・エディタを使用してこれらのページにコンテンツを追加します。JSP/HTMLビジュアル・エディタについてを参照してください。

Tiles定義ファイルでのTiles定義の作成および使用

  1. 作成済のTiles定義ファイルにTiles定義を追加します。「定義ファイルでのTiles定義の作成」を参照してください。

    以上で、Tiles定義を、必要なJSPページに挿入できます。

  2. アプリケーション・ナビゲータで、Tiles定義を挿入するJSPページをダブルクリックし、JSP/HTMLビジュアル・エディタで開きます。

  3. コンポーネント・パレットの「Struts Tiles」ページで「挿入」をクリックし、ビジュアル・エディタのページをクリックします。

  4. ページ上で「挿入」が選択されている状態で、プロパティ・インスペクタで、「定義」プロパティを挿入する定義の名前に設定します。この定義を初めて使用する場合は、「flush」プロパティをfalseに設定します。

JSPページのテキストは、次のようになります。

<tiles:insert definition="welcome"/>    

JSPページでのTiles定義の作成および定義のJSPページへの挿入

  1. Tiles定義を保持する新しいJSPページを作成します。「JSPページでのTiles定義の作成」を参照してください。

  2. ページがビジュアル・エディタに表示されている状態で、コンポーネント・パレットの「Struts Tiles」ページで「挿入」をクリックし、ビジュアル・エディタのページをクリックします。

  3. ページ上で「挿入」が選択されている状態で、プロパティ・インスペクタで、「定義」プロパティを挿入する定義の名前に設定します。この定義を初めて使用する場合は、「flush」プロパティをfalseに設定します。

ページのテキストは、次のようになります。

<tiles:definition id="def1" template="layoutPage.jsp">
  <tiles:put name="title" value="Our Company"/>
  <tiles:put name="header" value="/header.jsp"/>
  <tiles:put name="menu" value="/menu.jsp"/>
  <tiles:put name="body" value="/first_body.jsp"/>
  <tiles:put name="footer" value="/footer.jsp"/>
</tiles:definition>
<tiles:insert flush="true" beanName="def1"/>    

Tilesテンプレートの作成およびJSPページでのテンプレートへのコンテンツの直接の挿入

  1. アプリケーション・ナビゲータで、Tiles定義を挿入するJSPページをダブルクリックし、JSP/HTMLビジュアル・エディタで開きます。

  2. コンポーネント・パレットの「Struts Tiles」ページで「挿入」をクリックし、ビジュアル・エディタのページをクリックします。

  3. ページ上で「挿入」が選択されている状態で、プロパティ・インスペクタで、「テンプレート」プロパティを使用するレイアウト・テンプレート・ファイルの名前に設定します。この定義を初めて使用する場合は、「flush」プロパティをfalseに設定します。

  4. コンポーネント・パレットの「Struts Tiles」ページでputをクリックし、ビジュアル・エディタのページのInsertタグ内をクリックします。

  5. 使用する各レイアウト・テンプレートについて、次のステップを実行します。

    putが選択されている状態で、プロパティ・インスペクタで、「名前」プロパティをコンテンツを挿入するテンプレートの領域の名前に設定し、「値」プロパティをその領域に表示するテキスト値( "Our Company"など)またはこの領域に表示するファイルへのパスに設定します。ファイルは、ドロップダウン・リストから選択するか、または省略記号ボタンを使用してファイルをブラウズし、選択します。

以上で、ページをアプリケーションで使用できます。JSPページのテキストは次のようになります。

<tiles:insert template="layoutPage.jsp" flush="true">
  <tiles:put name="title" value="Our Company"/>
  <tiles:put name="header" value="/header.jsp"/>
  <tiles:put name="menu" value="/menu.jsp"/>
  <tiles:put name="body" value="/first_body.jsp"/>
  <tiles:put name="footer" value="/footer.jsp"/>
</tiles:insert>    

タイル定義の使用