Struts2.0.9とTiles2.0.5の使い方

感想おまちしてます!

Struts1.3.xでTilesをはじめて使ってみたが、これはかなり使えるプラグインだった。調べてみると、Apache.orgにTilesのサイトがあったので、Struts2のTilesプラグインを使った実装を調べてみる。

まずはインストールからシンプルに使ってみる。

スポンサーリンク

インストール

Tilesをダウンロードしてきて以下の3ファイルを「WEB-INF/lib」に配置する。この場所以外に配置するのは推奨されない。

  • tiles-api-2.0.5.jar
  • tiles-core-2.0.5.jar
  • tiles-jsp-2.0.5.jar(JSPのサポートがいる場合に入れる)

依存するライブラリを入れる。ダウンロードしたモジュールに入っているのでそれを使えばいい。

  • Jakarta Commons BeanUtils 1.7.0以上
  • Jakarta Commons Digester 1.8以上
  • Jakarta Commons Logging (at least API) 1.1以上

Tilesエンジンの設定

3つの方法がある。

Servletを利用する

web.xmlにTilesのサーブレットを定義。Tilesの定義ファイルを指定してあげる。

 <servlet>
<servlet-name>tiles</servlet-name>
<servlet-class>
oorg.apache.tiles.web.startup.TilesServlet
</servlet-class>
<init-param>
<param-name>
org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
</param-name>
<param-value>
/WEB-INF/tiles-defs.xml,/org/apache/tiles/classpath-defs.xml
</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>

Listenerを使う

Listenerを使うことも可能。

<listener>
<listener-class>org.apache.tiles.web.startup.TilesListener</listener-class>
</listener>
<context-param>
<param-name>
org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
</param-name>
<param-value>
/WEB-INF/tiles-defs.xml,/org/apache/tiles/classpath-defs.xml
</param-value>
</context-param>

Filterを使う

<filter>
<filter-name>Tiles Filter</filter-name>
<filter-class>org.apache.tiles.web.startup.TilesFilter</filter-class>
<init-param>
<param-name>
org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
</param-name>
<param-value>
/WEB-INF/tiles-defs.xml,/org/apache/tiles/classpath-defs.xml
</param-value>
</init-param>
</filter>
...
<filter-mapping>
<filter-name>Tiles Filter</filter-name>
<url-pattern>*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>

Tiles定義ファイルの作成

レイアウト用JSPの作成

struts.xmlの修正