2007年10月16日火曜日

カスタムタグ


  1. TLD ファイルの定義
    タグライブラリに関する情報をタグライブラリディスクリプタ(TLD ファイル)に定義します。
    通常 WEB-INF/tlds 以下に配置します。


  2. タグハンドラクラスの作成
    タグの動作内容を定義します。
    TLD ファイルで tag-class タグでマッピングします。


  3. taglib ディレクティブ
    JSP ファイルでタグを使用する際、tablib 指令で TLD の URI を指定します。
    TLD ファイルの場所を直接指定するか、相対 URI または jar ファイルを指定します。
    (例)
    直接指定
    <%@ taglib prefix="sample" uri="/WEB-INF/tlds/myTaglib.tld" %>

  4. web.xml の定義(相対 URI の定義)
    web.xml で相対 URI を定義すると taglib ディレクティブで相対 URI を使用できます。
    (例)
    相対URI
    <%@ taglib prefix="sample" uri="/myTaglib.tld" %>

    web.xml
        <jsp-config>
            <taglib>
                <taglib-uri>/myTaglib</taglib-uri>
                <taglib-location>/WEB-INF/tlds/myTaglib.tld</taglib-location>
            </taglib>
        </jsp-config>

    taglib-location に jar ファイルの場所を指定することもできます。

  5. TLD ファイルを収めた jar ファイル
    taglib ディレクティブで jar ファイルを指定する場合、jar ファイルの META-INF ディレクトリ内に TLD ファイルを配置する必要があります。

0 件のコメント: