SeamにTomahawkの設定

またまたちょこっとSeamを触る。
環境は「id:yamo:20061207#1165458380」の続き(Seamプロジェクトを自動生成して日本語化したもの)。
「messages」タグで出力させるメッセージの中で対象のコンポーネントIDではなくその値を出力させたくなったので、Tomahawkの「messages」タグを使うことにする。
Seamプロジェクトはfaceletsを使うようになってるので、faceletsから利用できるように設定する必要がある。


@入れたもの

  • Tomahawk 1.1.3(取得元
    • tomahawk-1.1.3-bin.zip
  • Tomahawk 1.1.0用facelet-taglib(取得元
    • tomahawk.taglib.xml

※facelet-taglibは1.1.3のtomahawk.tldを元に作成する方がよいが、今回はmessagesをちょこっと使うだけなので手抜きで既存のものを流用。


@Tomahawkライブラリの追加

  1. Tomahawk 1.1.3を適当に解凍する
  2. 中に入っていた「tomahawk-1.1.3.jar」をプロジェクトの「lib」の中にコピーする
  3. プロジェクト直下の「build.xml」の「war」ターゲット内で「${war.dir}/WEB-INF/lib」にコピーするjarを列記してあるところに「tomahawk-1.1.3.jar」を追加

※ビルドには使わないのでビルドパスには入れなかった


@Tomahawkの設定

  1. 「tomahawk.taglib.xml」をプロジェクトの「resources/WEB-INF」にコピーする
  2. 「resources/WEB-INF/web.xml」に以下の行を追加する
<context-param>
    <param-name>facelets.LIBRARIES</param-name>
    <param-value>/WEB-INF/tomahawk.taglib.xml</param-value>
</context-param>

※今回はmessages用に入れただけなのでExtensionFilterなどの設定はしなかった(きちんと設定したい場合は下記参考ページを参照)


【参考ページ】

SeamでTomahawkのFileUploadを使う際の資料
JBoss.com - Wiki - SeamFileUpload
http://wiki.jboss.org/wiki/Wiki.jsp?page=SeamFileUpload

↓FaceletsでTomahawkを使う際の資料
Use Facelets with Tomahawk - Myfaces Wiki
http://wiki.apache.org/myfaces/Use_Facelets_with_Tomahawk