Struts Tilesフレームワークはレイアウトフレームワークであり、ユーザーはすべてのWebページにわたってヘッダー、フッター、メニューの標準的な外観を効率的に維持できます。
この例をダウンロードする –
Struts-Tile-Framework-Example.zip
Tilesテンプレートの例
次に、StrutsのすべてのWebページでヘッダーとフッターの詳細を維持するタイルテンプレートを作成する例を示します。
まず、このStrutsタイルフレームワークの関係を参照してください。
リンク://wp-content/uploads/2010/05/struts-tiles.png[
]
1. Struts Tilesライブラリを取得する
StrutsディストリビューションフォルダからStrutsタイルライブラリを取得するか、Mavenセントラルリポジトリから取得します。
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts-tiles</artifactId>
<version>1.3.10</version>
</dependency>
プロジェクトの依存関係ライブラリに組み込みます。
2.テンプレートを作成する
ヘッダーとフッターの詳細については、テンプレート赤とテンプレート緑を作成します。
これら2つのテンプレートは、背景色が異なる純粋なHTMLコードです。
[Logo Here]This is Template Red Header
/template-red/footer.jsp
This is Template Red Footer
-
テンプレート – 緑色**
/template-green/header.jsp
[Logo Here]This is Template Green Header
/template-green/footer.jsp
This is Template Green Footer
3.タイルのレイアウト
すべてのWebページの標準Webページレイアウトを作成します。
-
common-layout.jsp **
4.ボディテンプレート
ボディテンプレートでは、タイルフレームワークとの結合を解除するためのボディの詳細について、常に2つのページ “user-form.jspとuser-form-body.jsp”を作成する必要があります。 “user-form.jsp”は、タイル定義を取得し、実際のボディコンテンツ(user-form-body.jsp)をボディテンプレートとして「put」するために使用されます。
-
user-form.jsp **
-
user-form-body.jsp **
This is body content
5.タイルの定義
すべてのテンプレートが完了し、 “tiles-defs.xml”ファイルを作成し、赤いテンプレートの “会社テンプレート”の定義を宣言しました。
-
tiles-defs.xml **
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.3//EN"
"http://struts.apache.org/dtds/tiles-config__1__3.dtd">
<tiles-definitions>
<definition name="company-template" path="/pages/tiles/common-layout.jsp">
<put name="header" value="/pages/tiles/template-red/header.jsp"/>
<put name="footer" value="/pages/tiles/template-red/footer.jsp"/>
</definition>
</tiles-definitions>
6. TilesPluginを含める
Strutsタイルフレームワークを使用するには、Struts設定ファイルに ”
TilesPlugin
“プラグインクラスを宣言する必要があります。
-
struts-config.xml **
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://jakarta.apache.org/struts/dtds/struts-config__1__3.dtd">
<struts-config>
<action-mappings>
<action
path="/User"
type="org.apache.struts.actions.ForwardAction"
parameter="/pages/user/user-form.jsp"/>
</action-mappings>
<plug-in className="org.apache.struts.tiles.TilesPlugin" >
<set-property property="definitions-config"
value="/WEB-INF/tiles-defs.xml"/>
</plug-in>
</struts-config>
7.デモ
上記の場合、赤色のテンプレートが使用されます。
これをテンプレートの緑色に変更するには、 “tiles-defs.xml”ファイルを更新するだけです。
-
tiles-defs.xml **
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.3//EN"
"http://struts.apache.org/dtds/tiles-config__1__3.dtd">
<tiles-definitions>
<definition name="company-template" path="/pages/tiles/common-layout.jsp">
<put name="header" value="/pages/tiles/template-green/header.jsp"/>
<put name="footer" value="/pages/tiles/template-green/footer.jsp"/>
</definition>
</tiles-definitions>
もう一度アクセスする
ヘッダーとフッターの色が変更され(テンプレート緑色)、タイル構成ファイルにわずかな変更が加えられます。
リファレンス
Struts Tilesドキュメント –
http://struts.apache.org/1.x/struts-tiles/index.html