クラス EntryTag

すべての実装されたインタフェース:
BodyTag, IterationTag, JspTag, Tag, TryCatchFinally, Serializable

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/RAWSET) を設定します(必須) scope 【TAG】キャッシュする場合のスコープ[request/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】(通常は使いません)画面遷移を行わない形式の登録方法を使用するかを指定します useSLabel 【TAG】7.0.7.0 (2019/12/13) エラーメッセージにSLABELを利用するかどうか[true/false]を指定します(初期値:false) 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 リクエスト変数設定 RAWSET DBTableModelに直接セット 7.2.9.0 (2020/10/12) 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 を作成しますので、文字列連結等に使用できます。 TBLNULLSET 元の値が NULL の場合だけ、TBLSETを実行します。 6.9.9.0 (2018/08/20) 追加 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 に存在しない場合は、無視する。
導入されたバージョン:
JDK5.0,
  • フィールド詳細

  • コンストラクタの詳細

    • EntryTag

      public EntryTag()
      デフォルトコンストラクター
      変更履歴:
      6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
  • メソッドの詳細

    • doStartTag

      public int doStartTag()
      Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
      定義:
      doStartTag インタフェース内 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に置き換えます。
    • doEndTag

      public int doEndTag()
      Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
      定義:
      doEndTag インタフェース内 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に置き換えます。
    • release2

      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 属性を追加します。, 6.9.5.0 (2018/04/23) USE_CONSISTENCY 廃止(true固定), 7.0.7.0 (2019/12/13) useSLabel 属性を追加。
    • setAttributes

      protected void setAttributes(Attributes attri)
      内部タグの ColumnSetTag より、個々のカラムの値を書き換える為の属性を指定します。 複数の値を受け取って、後ほど、すべてのカラムに対して処理を行います。
      パラメータ:
      attri - 属性リスト
      変更履歴:
      3.1.0.0 (2003/03/20) Vector を使用している箇所で、非同期でも構わない箇所を、ArrayList に置換え。, 3.1.2.0 (2003/04/07) taglib パッケージ内部で使用している箇所を protected 化する。, 8.5.3.0 (2023/09/08) DynamicAttributes対応
    • setTableId

      public void setTableId(String id)
      【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=])。
      パラメータ:
      id - テーブルID (sessionに登録する時のID)
      説明:
      検索結果より、DBTableModelオブジェクトを作成します。これを、下流のviewタグ等に 渡す場合に、通常は、session を利用します。その場合の登録キーです。 query タグを同時に実行して、結果を求める場合、同一メモリに配置される為、 この tableId 属性を利用して、メモリ空間を分けます。 (初期値:HybsSystem#TBL_MDL_KEY[=])。
    • setCommand

      public void setCommand(String cmd)
      【TAG】コマンド (INSERT/COPY/MODIFY/DELETE/ENTRY/CHANGE/RESET/ALLRESET/ALLACTION/RESETDATA/INSERTONE/REALDELETE/REQENTRY/RAWSET) を設定します。
      パラメータ:
      cmd - コマンド (public static final 宣言されている文字列)
      関連項目:
      説明:
      コマンドは、HTMLから(get/post)指定されますので、CMD_xxx で設定される フィールド定数値のいづれかを、指定できます。
    • setRepeatCount

      public void setRepeatCount(String rc)
      【TAG】指定の回数分だけ、繰り返し処理を行う回数を指定します(初期値:1)。
      パラメータ:
      rc - 繰り返し処理回数(初期値:1)
      変更履歴:
      3.5.4.2 (2003/12/15) 新規追加
      説明:
      追加や複写時に、指定の回数分だけ、処理を繰り返して、新規に行を 作成します。 繰り返しは、指定の行に対して行われ、繰り返し毎に、直前に作成された 行を元に処理します。これは、例えば、columnSet で、action="ADD"の場合に、 繰り返す毎に、ADD処理が実行されることを意味します。 行が指定されていない場合は、先頭空行に追加します。 初期値は、1回です。
    • setUseConsistency

      public void setUseConsistency(String ck)
      【TAG】Consistencyキー による整合性チェックを行うかどうか[true/false]を指定します(初期値:true)。
      パラメータ:
      ck - 整合性チェック [true:行う/false:行わない]
      変更履歴:
      3.5.5.7 (2004/05/10) 新規登録
      説明:
      検索結果を DBTableModel にセットする時に、整合性キーの Consistency キーを 作成します。これを、Viewタグでhidden出力しておき、Entryタグでデータ書き換え時に 整合性チェックを行います。これは、IEの戻るボタンで戻った場合に、画面の キーと検索結果の DBTableModel の内容が一致しない場合のエラーチェックに なります。 この属性は、何らかのケースで、このエラーチェックを行いたくない場合に、 false に設定することで、整合性チェックを行いません。 初期値は、true(整合性チェックを行う)です。
    • getParameterRows

      protected int[] getParameterRows()
      表示データの HybsSystem.ROW_SEL_KEY を元に、選ばれた 行を処理の対象とします。
      オーバーライド:
      getParameterRows クラス内 CommonTagSupport
      戻り値:
      選択行の配列
      変更履歴:
      3.8.1.1 (2005/11/21) selectedAll 追加。全件選択されたこととして、処理します。, 4.0.0.0 (2005/01/31) getParameterRows() を使用するように変更
      このメソッドは、nullを返しません
    • setSelectedAll

      public void setSelectedAll(String all)
      【TAG】データを全件選択済みとして処理するかどうか[true/false]を指定します(初期値:false)。
      パラメータ:
      all - 全件選択済み処理 [true:全件選択済み/false:通常]
      説明:
      全てのデータを選択済みデータとして扱って処理します。 全件処理する場合に、(true/false)を指定します。 初期値は false です。
    • setStrictCheck

      public void setStrictCheck(String check)
      【TAG】(通常は使いません)カラムIDの存在チェックを行うかどうか[true/false]を指定します(初期値:true)。
      パラメータ:
      check - 存在チェック [true:行う/false:行わない]
      説明:
      true の場合、カラムIDがDBTableModel に存在しない場合は、エラーになります。 false の場合、カラムIDがDBTableModel に存在しない場合は、無視します。 これは、検索条件によって、設定されるカラムが異なる場合でも、entryタグを 正常に動作させたい場合に、使用します。 初期値は、true(チェックを行う)です。
    • setNoTransition

      public void setNoTransition(String noTrnstn)
      【TAG】(通常は使いません)画面遷移を行わない形式の登録方法を使用するかを指定します。
      パラメータ:
      noTrnstn - 画面遷移を行わない形式の登録方法を使用するか
      変更履歴:
      4.3.3.0 (2008/10/01) 新規追加, 5.1.3.0 (2010/02/01) noTransition、ajaxSubmitのコントロールは、requestで行う。
      説明:
      画面遷移なしの登録を行うかどうかを指定します。 trueが指定された場合、entryタグでは、行の追加・複写時にDBTableModel上の最終行にデータを 追加します。 画面遷移なしモードの場合、途中行に挿入された場合、既にクライアントに出力されている チェックボックスの行番号や各入力フィールドの変数名との整合性を合わせるためには、 編集行以降の各変数値を全て再計算する必要があります。 この処理は、レスポンス悪化に繋がるため、DBTableModel上は、中間に行の挿入を行いません。 但し画面表示上は、通常通り選択行の直下に行が挿入されるため、DBTableModelの順番と標準順が 異なります。(エンジン側では、各チェックボックスの値で行を識別しているため、問題は発生しません) この値は、og:headタグで設定値、または前画面からの値を継承するため、通常、この属性ではセットしません。
    • setUseSLabel

      public void setUseSLabel(String prm)
      【TAG】エラーメッセージにSLABELを利用するかどうか[true/false]を指定します(初期値:false)。
      パラメータ:
      prm - SLABEL利用 [true:利用する/false:利用しない]
      変更履歴:
      7.0.7.0 (2019/12/13) 新規追加
      説明:
      通常のエラーメッセージは、ラベル(長)が使われますが、これをラベル(短)を使いたい場合に、true にセットします。 ここでのラベル(短)は、タグ修飾なしの、ラベル(短)です。 標準はfalse:利用しない=ラベル(長)です。 true/false以外を指定した場合はfalse扱いとします。 ラベルリソースの概要説明があれば表示しますが、useSLabel="true" 時は、概要説明を表示しません。
    • toString

      public String toString()
      このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
      オーバーライド:
      toString クラス内 CommonTagSupport
      戻り値:
      このクラスの文字列表現
      このメソッドは、nullを返しません