jp.terasoluna.fw.web.taglib
クラス DefineCodeListTag
java.lang.Object
javax.servlet.jsp.tagext.TagSupport
jp.terasoluna.fw.web.taglib.DefineCodeListTag
- すべての実装されたインタフェース:
- Serializable, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag
public class DefineCodeListTag
- extends javax.servlet.jsp.tagext.TagSupport
defineCodeList タグの実装クラス。
サーブレットコンテキストから
属性 id で指定された CodeListLoader を探し出し、
その中に保存されているコードリストを取得する。
見つからない場合は空のコードリストの取得を行う。
コードリスト内の要素はプロパティ名が id 、 name
で格納されているため、アクセスするためには、タグ内のプロパティに
これら要素名を用いる。
コードリストの読み込みは、
CodeListLoader
インタフェースの実装クラスを参照のこと。
タグがサポートする属性
defineCodeList タグでは、以下の属性をサポートする。
属性名 |
デフォルト値 |
必須性 |
実行時式 |
概要 |
id |
- |
true |
true |
この属性からCodeListLoaderを検索する。つまり
CodeListLoader
インタフェースを実装したbeanの名前を指定する。
このタグ宣言以降、<logic:iterator>タグ、
<html:options>タグなどでコードリストが参照できる。
|
カスタムタグのスクリプティング変数
このタグによって設定されるスクリプティング変数はありません。
使用方法
以下の例は、CodeListLoader インタフェースを実装したクラスの bean を
"loader1"と言う名前で定義して使用する場合の設定例である。
定義の方法は
DBCodeListLoader
、
及び
MappedCodeListLoader
を参照。
JSP 内での記述例。
<t:defineCodeList id="loader1" />
…
<html:select property="selectOptions">
<html:options collection="loader1"
labelProperty="name"
property="id"/>
</html:select>
…
コードリストのサイズ取得に関しては、WriteCodeCountTag
を参照
- 関連項目:
CodeListLoader
,
DBCodeListLoader
,
MappedCodeListLoader
,
WriteCodeCountTag
,
直列化された形式
クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド |
id, pageContext |
インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド |
EVAL_BODY_AGAIN |
インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド |
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE |
クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド |
doAfterBody, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue |
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DefineCodeListTag
public DefineCodeListTag()
doStartTag
public int doStartTag()
throws javax.servlet.jsp.JspException
- タグ評価開始時に呼ばれるメソッド。
サーブレットコンテキストから、ApplicationContextを取得し、
"page" 属性で指定された id
で CodeListLoader を取得し、その中の
コードリストを pageContext に登録する。
コードリストが発見できない場合、空のArrayListを
pageContext に登録する。
なお、登録時のスコープは "page" 属性とする。
- 定義:
- インタフェース
javax.servlet.jsp.tagext.Tag
内の doStartTag
- オーバーライド:
- クラス
javax.servlet.jsp.tagext.TagSupport
内の doStartTag
- 戻り値:
- 処理制御指示。常に EVAL_BODY_INCLUDE
- 例外:
javax.servlet.jsp.JspException
- JSP 例外
doEndTag
public int doEndTag()
throws javax.servlet.jsp.JspException
- タグ評価終了時に呼ばれるメソッド。
- 定義:
- インタフェース
javax.servlet.jsp.tagext.Tag
内の doEndTag
- オーバーライド:
- クラス
javax.servlet.jsp.tagext.TagSupport
内の doEndTag
- 戻り値:
- 処理制御指示。常に EVAL_PAGE
- 例外:
javax.servlet.jsp.JspException
- JSP 例外
release
public void release()
- タグハンドラ解放時の処理。
- 定義:
- インタフェース
javax.servlet.jsp.tagext.Tag
内の release
- オーバーライド:
- クラス
javax.servlet.jsp.tagext.TagSupport
内の release
Copyright © 2012. All Rights Reserved.