クラス ColumnCheckTag

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

    public class ColumnCheckTag
    extends CommonTagSupport
    登録データの物理チェック(整合性チェック、nullチェック)を行うタグです。 コマンドに対応したチェック方式で、指定のカラムをチェックします。 command="NEW" の場合は、columns 引数にCSV形式で指定したカラム名より リクエスト情報を取得して、値をチェックします。 引数チェックでは、"%" や "_" などのあいまい検索時に指定する記号を 含むとエラーになるカラムはチェック対象からはずす必要がある為、 チェックすべきカラムを指定する必要があります。 command="ENTRY" の場合は、columns 引数に無関係に、全てのリクエストされたカラム の値をチェックします。これは、先の検索時の場合と異なり、ENTRYでは データベースに値を設定する為、無条件にチェックする必要があります。 nullCheck は、command に無関係に指定のカラムが null (ゼロ文字列)かどうかを 判定します。 maxRowCount は、一覧検索時のチェックされた件数が、指定の値を超えた場合に エラーになります。minRowCount は、同様に、最小選択件数(設定値を含む)の指定です。 このタグは、エラー時には、それ以降のJSP画面を評価しません。BODY 部に記述された 値は、エラー時のみ表示され、正常時には、なにも表示されません。これは、エラー時の メッセージや、ユーザーにエラー時のアクションを行ってもらう場合の処理(例えば、 画面を戻る為のボタンなど)を表示させます。 useColumnLabel を true にセットすると、エラー時のカラム名(ラベル)を、カラムオブジェクトから 取得するようになります。動的カラム実行時や、DBTableModelに対して、ColumnEditor等で ラベルを書き換えた場合に、有効です。false の場合は、基本的にはラベルリソースからの 取得になりますが、ケースによっては、カラムオブジェクトから取得している場合もあります。 この属性は、互換性を重視し、初期値が、false になっています。 ERR0012 : 指定のデータがセットされていません。(NULLエラー)。key={0} ERR0017 : 選択エラー。選択行数({0} 件)が、最大制限値({1} 件)以上選ばれました。 ERR0018 : 選択エラー。選択行数({0} 件)が、最小制限値({1} 件)以下選ばれました。 ERR0036 : 選択必須エラー。以下のデータの内どれかは入力してください。key={0} ERR0037 : データ整合性エラー。指定のキーは整合性チェックの結果マッチしませんでした。key={0} val={1} regex={2} command="MODIFY" , "DELETE" 時には、強制的に、minRowCount="1" で処理します。
    関連項目:
    直列化された形式
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • ColumnCheckTag

        public ColumnCheckTag()
        デフォルトコンストラクター
    • メソッドの詳細

      • doStartTag

        public int doStartTag()
        Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
        定義:
        doStartTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doStartTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示( EVAL_BODY_BUFFERED )
      • doAfterBody

        public int doAfterBody()
        Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
        定義:
        doAfterBody インタフェース内 javax.servlet.jsp.tagext.IterationTag
        オーバーライド:
        doAfterBody クラス内 CommonTagSupport
        戻り値:
        後続処理の指示(SKIP_BODY)
      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
      • release2

        protected void release2()
        タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
        オーバーライド:
        release2 クラス内 CommonTagSupport
      • setColumns

        public void setColumns​(String clms)
        【TAG】チェックすべきカラム列をCSV形式(CSV形式)で指定します。
        パラメータ:
        clms - カラム列(CSV形式)
      • setNullCheck

        public void setNullCheck​(String clms)
        【TAG】NULL チェックすべきカラム列をCSV形式(CSV形式)で指定します。
        パラメータ:
        clms - カラム列(CSV形式)
      • setMustAnyCheck

        public void setMustAnyCheck​(String clms)
        【TAG】選択必須カラム(指定のカラムの内最低ひとつがNULLでない)を"AA|BB|CC,XX|YY|ZZ" 形式で指定します。
        パラメータ:
        clms - 選択必須カラム
      • setCommand

        public void setCommand​(String cmd)
        【TAG】コマンド[NEW/RENEW/ENTRY]をセットします(初期値:NEW)。
        パラメータ:
        cmd - コマンド (public static final 宣言されている文字列)
        関連項目:
        コマンド定数
      • setCheckType

        public void setCheckType​(String flag)
        【TAG】 チェック対象のタイプ[AUTO/NEW/ENTRY]を指定します(初期値:AUTO)。
        パラメータ:
        flag - チェックタイプ [AUTO/NEW/ENTRY]
      • setMaxRowCount

        public void setMaxRowCount​(String count)
        【TAG】チェックで選択された行数の最大値を設定します(初期値:-1 無制限)。
        パラメータ:
        count - 最大件数
      • setMinRowCount

        public void setMinRowCount​(String count)
        【TAG】チェックで選択された行数の最小値を設定します(初期値:-1 無制限)。
        パラメータ:
        count - 制限をかけたい行数 (この件数と同じ場合は正常)
      • setTableId

        public void setTableId​(String id)
        【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=])。
        パラメータ:
        id - テーブルID (sessionに登録する時のID)
      • setMatchKeys

        public void setMatchKeys​(String keys)
        【TAG】正規表現でのマッチングを行うカラム列をCSV形式(CSV形式)で指定します。
        パラメータ:
        keys - カラム列(CSV形式)
        関連項目:
        setMatchVals( String )
      • setMatchVals

        public void setMatchVals​(String vals)
        【TAG】正規表現でのマッチングを行うカラム列に対する値(正規表現)をCSV形式(CSV形式)で指定します。
        パラメータ:
        vals - カラム列に対する値(正規表現)(CSV形式)
        関連項目:
        setMatchKeys( String )
      • setRealTime

        public void setRealTime​(String flag)
        【TAG】(通常は使いません)リアルタイムチェックを行う場合に有効にします(初期値:false)。
        パラメータ:
        flag - リアルタイムチェック [true:する/false:しない]
      • setUseStrict

        public void setUseStrict​(String flag)
        【TAG】NEWの場合に、厳密にチェックするかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        flag - 厳密チェックか [true:厳密/false:甘い]
      • setUseColumnLabel

        public void setUseColumnLabel​(String flag)
        【TAG】カラムラベルを使用するかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        flag - カラムラベル使用 [true:する/false:しない]
      • setCheckNames

        public void setCheckNames​(String nm)
        【TAG】リクエスト変数の正規化を行うカラムをCSV形式で複数指定します。
        パラメータ:
        nm - 正規化を行うカラム(CSV形式)
      • setUseSLabel

        public void setUseSLabel​(String prm)
        【TAG】エラーメッセージにSLABELを利用するかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        prm - SLABEL利用 [true:利用する/false:利用しない]
      • toString

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