カスタムtaglib(tag library)のサンプルです。
セットアップ
mytaglib.warをデプロイしてください。
WEB-INF/srcにソースがあります。ビルドするにはclasspathを修正してください。
Helloタグ
<myt:hello>World</myt:hello>と記述すると、
Hello World !と出力されるカスタムタグです。
HelloTagクラスのdoStartTagとdoEndTagで接頭辞(prefix)と接尾辞(suffix)を付加しています。
Loopタグ
<myt:loop maxCount="4">Nested Tag</myt:loop>と記述すると、
<ol><li>Nested Tag<li>Nested Tag<li>Nested Tag<li>Nested Tag</ol>と出力されるカスタムタグです。
タグの属性に指定するパラメータは、mytaglib.tldにattributeタグを指定し、LoopTagクラスにsetterを用意します。DIコンテナのように値がsetterインジェクションされます。
組み合わせ
<myt:loop><myt:loop maxCount="4"><myt:hello>Nested Tag</myt:hello></myt:loop></myt:loop>のように組み合わせることもできます。
実行すると、以下のようになります。
-
- Hello Nested Tag !
- Hello Nested Tag !
- Hello Nested Tag !
- Hello Nested Tag !
-
- Hello Nested Tag !
- Hello Nested Tag !
- Hello Nested Tag !
- Hello Nested Tag !
-
- Hello Nested Tag !
- Hello Nested Tag !
- Hello Nested Tag !
- Hello Nested Tag !









