機能 |
カスタムタグハンドラ |
JST |
カスタムタグの実装 |
タグハンドラをコーディングし、TLD ファイルのタグ、TEI クラス、およびデプロイメントディスクリプタを定義します。 |
ファイルを .jst 形式で保存します。 |
呼び出しポイント |
この機能を実装するには、doStart 、doEnd 、および doAfterBody メソッドを コーディングします。 |
<tag method= "START|END| AFTER_BODY" %> ディレクティブにより制御される メソッドの機能が、自動的に実装されます。他のメソッドは、宣言内でメソッドを Java でコーディングすることによって実装できます。 |
本文コンテンツとの対話 |
この機能を実装するには、BodyTagSupport クラスを 拡張し、doAfterBody メソッドをコーディングし、bodyContent 変数によって 本文テキストにアクセスします。 |
<%@ tag type="LOOPING|BUFFERED" %> ディレクティブをインクルードすることによって、このタイプの処理を実行します。
|
戻りコード |
戻り定数を使用します。 |
returnCode という暗黙の 変数を使用します。
|
属性 |
TLD ファイルで各タグの属性を宣言します。 |
tagAttribute ディレクティブによって属性を宣言 します。
|
スクリプト変数 |
TEI クラスまたは TLD ファイルでスクリプト変数を宣言します。 |
tagVariable ディレクティブによってスクリプト変数を宣言します。また、isValid メソッドを定義する宣言を 使用して、属性の検証を実行することもできます。
|
Java ベースのカスタムタグハンドラ |
JSP ベースのカスタムタグ |
タグハンドラ Java ソースファイル |
JSP シンタックスによる JST ファイル |
doStartTag メソッド
|
<%@ tag method="START" %>
|
doEndTag メソッド
|
<%@ tag method="END" %>
|
doAfterBody メソッド
|
<%@ tag method="AFTER_BODY" %>
|
TagSupport クラスから継承します。
|
<%@ tag type="TAG" %>
|
BodyTagSupport クラスから継承 します。
|
<%@ tag type="LOOPING|BUFFERED" %>
|
タグハンドラ内に複数のメソッドを 実装します。 |
最初のメソッドは
<% tag method="method-type" %> を 使用して実装します。 その他のメソッドは、宣言に囲まれた Java ベースのメソッドを使用して実装します。 |
TLD ファイルで属性を定義します。 |
<%@ tagAttribute name="name"
type="type"
required="true|false"
rtexpr="true|false"
setter="true|false"
default="default attribute value" %>
|
TEI クラスまたは TLD ファイルで スクリプト変数を定義します。 |
<%@ tagVariable (id="id"|name="name")
type="type"
scope="AT_BEGIN|AT_END|NESTED" %>
|