public class EntryTag extends CommonTagSupport
検索結果の DBTableModelオブジェクトに値を設定するタグです。 columnSet と共に使用する場合は、entryタグ の command属性と、columnSetタグ の command属性が 一致した場合のみ、処理されます。 entryタグは、そのコマンドにより、DBTableModelオブジェクトの値を設定します。 たとえば、command="INSERT" ならば、1行分のデータを選択された行番号の次に挿入します。 また、追加、変更、削除された、DBTableModelオブジェクト でも、内部には元のデータを 持っているため、command="RESET" で元の状態に戻すことが可能です。
●形式: ・<og:entry command="…"> <og:columnSet command="…" /> </og:entry> ・<og:entry command="…" /> ・・・columnSetを使わない場合でもresult.jspから次画面(insert,modify,copy.jsp等)に にDBTableModelをもっていく場合には、必ず2を書いてください。 (取消のとき、エンジン内でDBTableModelを操作するのに使用する為) ●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します) ●Tag定義: <og:entry command ○【TAG】コマンド (INSERT/COPY/MODIFY/DELETE/ENTRY/CHANGE/RESET/ALLRESET/ALLACTION/RESETDATA/INSERTONE/REALDELETE/REQENTRY)を設定します(必須) scope 【TAG】キャッシュする場合のスコープ[request/page/session/application]を指定します(初期値:session) repeatCount 【TAG】指定の回数分だけ、繰り返し処理を行う回数を指定します(初期値:1) tableId 【TAG】(通常は使いません)sessionから所得する DBTableModelオブジェクトの ID useConsistency 【TAG】Consistency キー による整合性チェックを行うかどうかを指定します(初期値:true) selectedAll 【TAG】データを全件選択済みとして処理するかどうか[true/false]を指定します(初期値:false) strictCheck 【TAG】(通常は使いません)カラムIDの存在チェックを行うかどうか[true/false]を指定します(初期値:true) noTransition 【TAG】(通常は使いません)画面遷移を行わない形式の登録方法を使用するかを指定します caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) > ... Body ... </og:entry> ●使用例 <og:entry command="{@command}" > <og:columnSet command="{@command}" columnId="ECNO" action="CLEAR" /> <og:columnSet command="{@command}" columnId="JYOKYO" action="SET" value="1" /> </og:entry> <og:entry command="MODIFY" rows="1" > <og:columnSet command="MODIFY" columnId="key" action="TBLSET" value="[key][lang]"/> </og:entry> action="ADD" は、DBTypeに依存した方法で、既存の値を、+1 します。 <og:entry command="{@command}" repeatCount="5" > <og:columnSet command="{@command}" columnId="YKNO" action="ADD" /> </og:entry> action="ADD" は、DBTypeに依存した方法で、既存の値に、value の値を加算します。 <og:entry command="{@command}" repeatCount="5" > <og:columnSet command="{@command}" columnId="YKNO" action="ADD" value="5" /> </og:entry> command属性 は、columnSetタグのcommand属性と同一の場合のみ、処理します。 [command属性] INSERT 新規 COPY 複写 MODIFY 変更 DELETE 削除 ENTRY エントリー CHANGE チェンジ RESET リセット (RESET_ACTION_ALL_USE=true で、ALLRESET が呼ばれます) ALLRESET 全件リセット ALLACTION オールアクション RESETDATA リセットデータ INSERTONE 新規(1行のみ) REALDELETE 物理削除 REQENTRY リクエスト変数設定 command属性 は、columnSetタグで指定します。 [action属性] DEFAULT カラムリソースで定義した初期値をセットします。 CLEAR 値をクリア(ゼロストリング "" )します。 ADD 現在の値を +1 します。 0 ⇒ 1 , A ⇒ B , 9 ⇒ 10。value属性と併用すれば、指定の値を加算できます。 SET value で設定した値を 新しい値として登録します。 NULLSET 元の値が NULL の場合だけ、value で設定した新しい値を登録します。 LOWER 小文字に変換します。 UPPER 大文字に変換します。 COPY value にコピー元のカラムIDをセットすれば、その値を代入します。 TBLSET DBTableModel の内容を取り込んで指定の columnId カラムに設定します。[カラム名] で指定できます。 また、これは文字列を解析して、 value を作成しますので,文字列連結等に使用できます。 WRTCTRL writableControl を使用したカラムデータの先頭アンダーバーを削除します。 DBMENU DBMENUでパラメータ設定(コロン連結文字)を使用したカラムデータの先頭データのみにします。 REQSET valueで指定したカラムの値をキーに、リクエスト変数から値を取出し、セットします。 SEQSET valueの初期値を利用して、1レコードごとに、+1した値をセットします。 PREFIX valueの値を後ろから検索し、指定のカラム値の前半部分を取得します(記号は含みません)。 SUFIX valueの値を後ろから検索し、指定のカラム値の後半部分を取得します(記号は含みません)。 その他 カラムのDBType の valueAction メソッドを呼び出します。自由に設定可能です。 [strictCheck属性]は、カラムIDの存在チェックを行うかどうかを指定します(初期値:true) true カラムIDがDBTableModel に存在しない場合は、エラーになる。 false カラムIDがDBTableModel に存在しない場合は、無視する。
修飾子とタイプ | フィールドと説明 |
---|---|
static java.lang.String |
ACT_ADD
action 引数に渡す事の出来る アクションコマンド +1 "ADD"
|
static java.lang.String |
ACT_CLEAR
action 引数に渡す事の出来る アクションコマンド クリア "CLEAR"
|
static java.lang.String |
ACT_COPY
action 引数に渡す事の出来る アクションコマンド コピー "COPY"
|
static java.lang.String |
ACT_DBMENU
action 引数に渡す事の出来る アクションコマンド DBメニュー "DBMENU"
|
static java.lang.String |
ACT_DEFAULT
action 引数に渡す事の出来る アクションコマンド 初期値:"DEFAULT"
|
static java.lang.String |
ACT_LOWER
action 引数に渡す事の出来る アクションコマンド 小文字化"LOWER"
|
static java.lang.String |
ACT_NULLSET
action 引数に渡す事の出来る アクションコマンド NULLセット "NULLSET"
|
static java.lang.String |
ACT_PREFIX
action 引数に渡す事の出来る アクションコマンド PREFIX値セット "PREFIX"
|
static java.lang.String |
ACT_REQSET
action 引数に渡す事の出来る アクションコマンド リクエスト値セット "REQSET"
|
static java.lang.String |
ACT_SEQSET
action 引数に渡す事の出来る アクションコマンド 連番値セット "SEQSET"
|
static java.lang.String |
ACT_SET
action 引数に渡す事の出来る アクションコマンド セット "SET"
|
static java.lang.String |
ACT_SUFIX
action 引数に渡す事の出来る アクションコマンド SUFIX値セット "SUFIX"
|
static java.lang.String |
ACT_TBLSET
action 引数に渡す事の出来る アクションコマンド テーブルセット "TBLSET"
|
static java.lang.String |
ACT_UPPER
action 引数に渡す事の出来る アクションコマンド 大文字化"UPPER"
|
static java.lang.String |
ACT_WRTCTRL
action 引数に渡す事の出来る アクションコマンド ライトコントロール "WRTCTRL"
|
static java.lang.String |
CMD_ALLACTION
command 引数に渡す事の出来る コマンド オールアクション"ALLACTION"
|
static java.lang.String |
CMD_ALLRESET
command 引数に渡す事の出来る コマンド 全件リセット "ALLRESET"
|
static java.lang.String |
CMD_CHANGE
command 引数に渡す事の出来る コマンド チェンジ "CHANGE"
|
static java.lang.String |
CMD_COPY
command 引数に渡す事の出来る コマンド 複写 "COPY"
|
static java.lang.String |
CMD_DELETE
command 引数に渡す事の出来る コマンド 削除 "DELETE"
|
static java.lang.String |
CMD_ENTRY
command 引数に渡す事の出来る コマンド エントリー "ENTRY"
|
static java.lang.String |
CMD_INSERT
command 引数に渡す事の出来る コマンド 新規 "INSERT"
|
static java.lang.String |
CMD_INSERTONE
command 引数に渡す事の出来る コマンド 追加(1行のみ)"INSERTONE"
|
static java.lang.String |
CMD_MODIFY
command 引数に渡す事の出来る コマンド 変更 "MODIFY"
|
static java.lang.String |
CMD_REALDELETE
command 引数に渡す事の出来る コマンド 物理削除 "REALDELETE"
|
static java.lang.String |
CMD_REQENTRY
command 引数に渡す事の出来る コマンド リクエスト変数設定 "REQENTRY"
|
static java.lang.String |
CMD_RESET
command 引数に渡す事の出来る コマンド リセット "RESET"
|
static java.lang.String |
CMD_RESETDATA
command 引数に渡す事の出来る コマンド リセット(データのみ)"RESETDATA"
|
BR, BUFFER_MIDDLE, CR
コンストラクタと説明 |
---|
EntryTag()
デフォルトコンストラクター
|
修飾子とタイプ | メソッドと説明 |
---|---|
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
|
int |
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
|
protected int[] |
getParameterRows()
表示データの HybsSystem.ROW_SEL_KEY を元に、選ばれた 行を処理の対象とします。
|
protected void |
release2()
タグリブオブジェクトをリリースします。
|
protected void |
setAttributes(Attributes attri)
内部タグの ColumnSetTag より、個々のカラムの値を書き換える為の属性を指定します。
|
void |
setCommand(java.lang.String cmd)
【TAG】コマンド (INSERT,COPY,MODIFY,DELETE,ENTRY,CHANGE,ALLACTION,RESET)をセットします。
|
void |
setNoTransition(java.lang.String noTrnstn)
【TAG】(通常は使いません)画面遷移を行わない形式の登録方法を使用するかを指定します。
|
void |
setRepeatCount(java.lang.String rc)
【TAG】指定の回数分だけ、繰り返し処理を行う回数を指定します(初期値:1)。
|
void |
setSelectedAll(java.lang.String all)
【TAG】データを全件選択済みとして処理するかどうか[true/false]を指定します(初期値:false)。
|
void |
setStrictCheck(java.lang.String check)
【TAG】(通常は使いません)カラムIDの存在チェックを行うかどうか[true/false]を指定します(初期値:true)。
|
void |
setTableId(java.lang.String id)
【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します
(初期値:HybsSystem#TBL_MDL_KEY[=h_tblmdl])。
|
void |
setUseConsistency(java.lang.String ck)
【TAG】Consistency キー による整合性チェックを行うかどうか[true/false]を指定します(初期値:true)。
|
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。
|
add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doAfterBody, 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, useXssCheck
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
public static final java.lang.String CMD_INSERT
public static final java.lang.String CMD_COPY
public static final java.lang.String CMD_MODIFY
public static final java.lang.String CMD_DELETE
public static final java.lang.String CMD_ENTRY
public static final java.lang.String CMD_CHANGE
public static final java.lang.String CMD_RESET
public static final java.lang.String CMD_ALLRESET
public static final java.lang.String CMD_ALLACTION
public static final java.lang.String CMD_RESETDATA
public static final java.lang.String CMD_INSERTONE
public static final java.lang.String CMD_REALDELETE
public static final java.lang.String CMD_REQENTRY
public static final java.lang.String ACT_DEFAULT
public static final java.lang.String ACT_CLEAR
public static final java.lang.String ACT_ADD
public static final java.lang.String ACT_LOWER
public static final java.lang.String ACT_UPPER
public static final java.lang.String ACT_COPY
public static final java.lang.String ACT_SET
public static final java.lang.String ACT_NULLSET
public static final java.lang.String ACT_TBLSET
public static final java.lang.String ACT_WRTCTRL
public static final java.lang.String ACT_DBMENU
public static final java.lang.String ACT_REQSET
public static final java.lang.String ACT_SEQSET
public static final java.lang.String ACT_PREFIX
public static final java.lang.String ACT_SUFIX
public EntryTag()
6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor. |
public int doStartTag()
doStartTag
インタフェース内 javax.servlet.jsp.tagext.Tag
doStartTag
クラス内 CommonTagSupport
5.1.9.0 (2010/08/01) 戻り値を、EVAL_BODY_INCLUDE → EVAL_BODY_BUFFERED に変更 |
6.3.4.0 (2015/08/01) caseKey,caseVal,caseNN,caseNull,caseIf 属性対応 |
6.4.3.4 (2016/03/11) String配列 から、Setに置き換えます。 |
public int doEndTag()
doEndTag
インタフェース内 javax.servlet.jsp.tagext.Tag
doEndTag
クラス内 CommonTagSupport
3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。 |
3.5.5.5 (2004/04/23) 登録時の 整合性パラメータチェックを行います。 |
3.5.5.6 (2004/04/27) JSP画面の作成不具合。ENTRY系で、command を投げた場合は、無視します。 |
3.5.5.7 (2004/05/10) Consistency キー による整合性チェックを行うかどうかを指定します。 |
3.5.5.8 (2004/05/20) Consistency キー による整合性チェックを checkConsistency() に集約します。 |
3.6.0.8 (2004/11/19) DBTableModel をセーブする時に、トランザクションチェックを行います。 |
4.3.3.0 (2008/10/01) noTransition 属性を追加します。 |
4.3.8.0 (2009/08/01) noTransition値取得のメソッド名変更 |
5.1.3.0 (2010/02/01) noTransitionのコントロールは、requestで行う。 |
6.3.4.0 (2015/08/01) caseKey,caseVal,caseNN,caseNull,caseIf 属性対応 |
6.4.3.4 (2016/03/11) String配列 から、Setに置き換えます。 |
protected void release2()
release2
クラス内 CommonTagSupport
2.0.0.4 (2002/09/27) カスタムタグの release() メソッドを、追加 |
3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。 |
3.5.4.2 (2003/12/15) 指定の回数繰り返す機能を追加します。 |
3.5.5.7 (2004/05/10) Consistency キー による整合性チェックを行うかどうかを指定します。 |
3.8.1.1 (2005/11/21) selectedAll 追加。全件選択されたこととして、処理します。 |
4.0.0.0 (2006/09/31) strictCheck 追加。 |
4.3.3.0 (2008/10/01) noTransition 属性を追加します。 |
5.6.5.2 (2013/06/21) seqsetCnt 属性を追加します。 |
protected void setAttributes(Attributes attri)
attri
- 属性リスト3.1.0.0 (2003/03/20) Vector を使用している箇所で、非同期でも構わない箇所を、ArrayList に置換え。 |
3.1.2.0 (2003/04/07) taglib パッケージ内部で使用している箇所を protected 化する。 |
public void setTableId(java.lang.String id)
id
- テーブルID (sessionに登録する時のID)検索結果より、DBTableModelオブジェクトを作成します。これを、下流のviewタグ等に 渡す場合に、通常は、session を利用します。その場合の登録キーです。 query タグを同時に実行して、結果を求める場合、同一メモリに配置される為、 この tableId 属性を利用して、メモリ空間を分けます。 (初期値:HybsSystem#TBL_MDL_KEY[=h_tblmdl])。
public void setCommand(java.lang.String cmd)
cmd
- コマンド (public static final 宣言されている文字列)コマンドは,HTMLから(get/post)指定されますので,CMD_xxx で設定される フィールド定数値のいづれかを、指定できます。
public void setRepeatCount(java.lang.String rc)
rc
- 繰り返し処理回数(初期値:1)追加や複写時に、指定の回数分だけ、処理を繰り返して、新規に行を 作成します。 繰り返しは、指定の行に対して行われ、繰り返し毎に、直前に作成された 行を元に処理します。これは、例えば、columnSet で、action="ADD"の場合に、 繰り返す毎に、ADD処理が実行されることを意味します。 行が指定されていない場合は、先頭空行に追加します。 初期値は、1回です。
3.5.4.2 (2003/12/15) 新規追加 |
public void setUseConsistency(java.lang.String ck)
ck
- 整合性チェック [true:行う/false:行わない]検索結果を DBTableModel にセットする時に、整合性キーの Consistency キーを 作成します。これを、Viewタグでhidden出力しておき、Entryタグでデータ書き換え時に 整合性チェックを行います。これは、IEの戻るボタンで戻った場合に、画面の キーと検索結果の DBTableModel の内容が一致しない場合のエラーチェックに なります。 この属性は、何らかのケースで、このエラーチェックを行いたくない場合に、 false に設定することで、整合性チェックを行いません。 初期値は、true(整合性チェックを行う)です。
3.5.5.7 (2004/05/10) 新規登録 |
protected int[] getParameterRows()
getParameterRows
クラス内 CommonTagSupport
3.8.1.1 (2005/11/21) selectedAll 追加。全件選択されたこととして、処理します。 |
4.0.0.0 (2005/01/31) getParameterRows() を使用するように変更 |
public void setSelectedAll(java.lang.String all)
all
- 全件選択済み処理 [true:全件選択済み/false:通常]全てのデータを選択済みデータとして扱って処理します。 全件処理する場合に、(true/false)を指定します。 初期値は false です。
public void setStrictCheck(java.lang.String check)
check
- 存在チェック [true:行う/false:行わない]true の場合、カラムIDがDBTableModel に存在しない場合は、エラーになります。 false の場合、カラムIDがDBTableModel に存在しない場合は、無視します。 これは、検索条件によって、設定されるカラムが異なる場合でも、entryタグを 正常に動作させたい場合に、使用します。 初期値は true (チェックを行う) です。
public void setNoTransition(java.lang.String noTrnstn)
noTrnstn
- 画面遷移を行わない形式の登録方法を使用するか画面遷移なしの登録を行うかどうかを指定します。 trueが指定された場合、entryタグでは、行の追加・複写時にDBTableModel上の最終行にデータを 追加します。 画面遷移なしモードの場合、途中行に挿入された場合、既にクライアントに出力されている チェックボックスの行番号や各入力フィールドの変数名との整合性を合わせるためには、 編集行以降の各変数値を全て再計算する必要があります。 この処理は、レスポンス悪化に繋がるため、DBTableModel上は、中間に行の挿入を行いません。 但し画面表示上は、通常通り選択行の直下に行が挿入されるため、DBTableModelの順番と標準順が 異なります。(エンジン側では、各チェックボックスの値で行を識別しているため、問題は発生しません) この値は、og:headタグで設定値、または前画面からの値を継承するため、通常、この属性ではセットしません。
4.3.3.0 (2008/10/01) 新規追加 |
5.1.3.0 (2010/02/01) noTransition、ajaxSubmitのコントロールは、requestで行う。 |
public java.lang.String toString()
toString
クラス内 CommonTagSupport
Webアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.