public class TableFilterTag extends CommonTagSupport
TableFilter のサブクラスをCALLしてDBTableModelにアクセスするタグです。
DBTableModel を TableFilter のサブクラス(classIdで指定)に渡して処理を実行します。
クラスを作成する場合は、org.opengion.hayabusa.db.TableFilter インターフェースを継承した
クラスにする必要があります。また、classId 属性には、システムリソース で
設定した TableFilter.XXXX の XXXX を指定します。
BODY部分は、SQLを記述する為だけに使っていましたが、CSS定義形式の書式で、keys,vals を記述
できるようにします。
これは、下記のようなパラメータを、keys="KEY,KEY2,KEY3" vals='AAAA,"BB,CC,DD",EE' のような記述形式と
{
KEY1 : AAAA ;
KEY2 : BB,CC,DD ;
KEY3 : EE ;
・・・・・・
}
のような、CSS形式に類似の形式でも記述できるようにしました。
keys,vals と CSS定義形式パラメータを同時に指定した場合は、両方とも有効です。
ただし、キーが重複した場合は、不定と考えてください。
現時点では、CSS定義形式パラメータが優先されますが、これは、単に内部パラメータMapへの
登録順が、CSS定義形式パラメータが後の為、上書きされるためです。
※ このタグは、Transaction タグの対象です。 ●形式:<og:tableFilter classId="…" />
●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します)
●Tag定義:
<og:tableFilter
classId ○【TAG】データベース処理を実行するクラスパスを指定します(必須)。
tableId 【TAG】(通常は使いません)DBTableModel sessionに登録されているキーを指定します
modifyType 【TAG】データ処理の方法(A:追加 C:更新 D:削除)を指定します
keys 【TAG】リンク先に渡すキーを指定します
vals 【TAG】keys属性に対応する値をCSV形式で複数指定します
selectedAll 【TAG】データを全件選択済みとして処理するかどうか[true/false]を指定します(初期値:false)
stopZero 【TAG】検索結果が0件のとき処理を続行するかどうか[true/false]を指定します(初期値:false[続行する])
scope 【TAG】キャッシュする場合のスコープ[request/page/session/application]を指定します(初期値:session)
dbid 【TAG】(通常は使いません)Queryオブジェクトを作成する時のDB接続IDを指定します
caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) 5.7.7.2 (2014/06/20)
caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) 5.7.7.2 (2014/06/20)
caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) 5.7.7.2 (2014/06/20)
caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) 5.7.7.2 (2014/06/20)
caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない)
debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
> ... Body ...
</og:tableFilter>
●使用例
・引数/プロシジャーを直接書く場合
【entry.jsp】
<og:tableFilter
classId = "WL_LOGICSET" :TableFilter のサブクラス(実行クラス)
tableId = "WL0000" :登録元のDBTableModelのsession/request変数内の取得キー
keys = "AA,BB,CC" :実行クラスへの引数のキー
vals = "{@AA},{@BB},{@CC}" :実行クラスへの引数の値
selectedAll = "false/true" :処理対象の行を全行選択するかどうか(初期値:false)
modifyType = "A/C/D" :処理の方法(A:追加 C:更新 D:削除)を指定します。初期値は自動です。
/>
・BODY部分に、CSS形式のパラメータ(keys,vals)を記述する例
<og:tableFilter
classId = "WL_LOGICSET" :TableFilter のサブクラス(実行クラス)
tableId = "WL0000" :登録元のDBTableModelのsession/request変数内の取得キー
selectedAll = "false/true" :処理対象の行を全行選択するかどうか(初期値:false)
modifyType = "A/C/D" :処理の方法(A:追加 C:更新 D:削除)を指定します。初期値は自動です。
>
{
AA : {@AA}
BB : {@BB}
CC : {@CC}
}
</og:tableFilter>BR, BUFFER_MIDDLE, CRbodyContentid, pageContextEVAL_BODY_BUFFERED, EVAL_BODY_TAGEVAL_BODY_AGAINEVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE| コンストラクタと説明 |
|---|
TableFilterTag()
デフォルトコンストラクター
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
int |
doAfterBody()
Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
|
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
|
int |
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
|
protected int[] |
getParameterRows()
表示データの HybsSystem.ROW_SEL_KEY を元に、選ばれた 行を処理の対象とします。
|
protected void |
release2()
タグリブオブジェクトをリリースします。
|
void |
setClassId(java.lang.String id)
【TAG】データベース処理を実行するテーブルフィルターのクラスIDを指定します。
|
void |
setDbid(java.lang.String id)
【TAG】(通常は使いません)Queryオブジェクトを作成する時のDB接続IDを指定します。
|
void |
setKeys(java.lang.String key)
【TAG】リンク先に渡すキーを指定します。
|
void |
setModifyType(java.lang.String type)
【TAG】データ処理の方法[A:追加/C:更新/D:削除]を指定します(初期値:自動判定)。
|
void |
setSelectedAll(java.lang.String all)
【TAG】データを全件選択済みとして処理するかどうか[true/false]を指定します(初期値:false)。
|
void |
setStopZero(java.lang.String cmd)
【TAG】検索結果が0件のとき処理を停止するかどうか[true/false]を指定します(初期値:false[続行する])。
|
void |
setTableId(java.lang.String id)
【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します
(初期値:HybsSystem#TBL_MDL_KEY[=h_tblmdl])。
|
void |
setVals(java.lang.String val)
【TAG】names属性に対応する値をCSV形式で複数指定します。
|
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。
|
add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsg, getMsglbl, getNVLAttri, getObject, getParameterNames, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getSumRequestValue, getTagName, getTransaction, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, makeUrl, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseIf, setCaseKey, setCaseNN, setCaseNull, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterNames, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheckdoInitBody, getBodyContent, getPreviousOut, release, setBodyContentfindAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValueclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetParent, setPageContext, setParentpublic TableFilterTag()
public int doStartTag()
doStartTag インタフェース内 TagdoStartTag クラス内 CommonTagSupportpublic int doAfterBody()
doAfterBody インタフェース内 IterationTagdoAfterBody クラス内 CommonTagSupportpublic int doEndTag()
doEndTag インタフェース内 TagdoEndTag クラス内 CommonTagSupportprotected void release2()
release2 クラス内 CommonTagSupportprotected int[] getParameterRows()
getParameterRows クラス内 CommonTagSupportpublic void setClassId(java.lang.String id)
id - 実行クラスIDTableFilter インターフェースpublic void setTableId(java.lang.String id)
id - テーブルID (sessionに登録する時のID)public void setSelectedAll(java.lang.String all)
all - 全件選択済み [true:全件選択済み/false:通常]public void setStopZero(java.lang.String cmd)
cmd - 0件時停止可否 [true:処理を中止する/false:続行する]public void setModifyType(java.lang.String type)
type - 処理方法 [A:追加/C:更新/D:削除]public void setKeys(java.lang.String key)
key - リンク先に渡すキーpublic void setVals(java.lang.String val)
val - names属性に対応する値 (CSV形式)public void setDbid(java.lang.String id)
id - データベース接続IDpublic java.lang.String toString()
toString クラス内 CommonTagSupportWebアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.