org.opengion.hayabusa.taglib

## クラス HiddenTag

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - javax.servlet.jsp.tagext.BodyTagSupport
    - - org.opengion.hayabusa.taglib.CommonTagSupport
      - - org.opengion.hayabusa.taglib.HiddenTag

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

      public class HiddenTag
      extends CommonTagSupport

       隠しフィールドを作成するタグです(bodyHidden は廃止しました)。
       name属性をキーにvalue属性をセットします。
       通常のhiddenタグの他に、BODY部に記述した値を送信することができます。
       BODY部に記述した値は、リターンコードが取り除かれます。
       また、keys属性、vals属性を指定することで、複数のキー＋値を同時に設定できます。

  関連項目:
    直列化された形式
  形式サンプル:

         ●形式：
             ・<og:hidden name="…" value="…" />
             ・<og:hidden keys="…" vals="…" />
             ・<og:hidden name="…" />
                     ･･･
                 </og:hidden>
         ●body：あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します)

         ●Tag定義：
           <og:hidden
               name               【TAG】名前を指定します(name属性とkeys属性は同時には登録できません)
               value              【TAG】値を指定します(この属性を使うとBODY部は無視されます)
               keys               【TAG】名前をCSV形式で複数指定します(name属性とkeys属性は同時には登録できません)
               vals               【TAG】keys属性に対応する値をCSV形式で複数指定します
               defaultVal         【TAG】value属性に値がセットされていないときに、初期値をセットします
               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:hidden>

         ●使用例
            ・次画面にPNという名前で{@PN}に入っている値を渡します。
                <input:hidden name="PN" value="{@PN}" />

            ・次画面で使用するPLSQLと引数を渡します。
              <input:hidden name="name" value="UNIQ,LKIS,KBLOYA,KBLKO,KBNGK,HJO,KBLKNM" />
              <input:hidden name="SQL" value="{ call RKP0011B.RK0011B( ?,?,?,?,? ) }" />
                    ↓
              <og:plsqlUpdate
                     command    = "{@command}"
                     names      = "{@names}"
                     dbType     = "RK0011ARG"
                     queryType  = "JDBCPLSQL" >
                 {@SQL}
              </og:plsqlUpdate>

            ・次画面にSQLという名前でBodyに記述した値を渡します。
              <og:hidden name="SQL"
                      SELECT AAA
                      FROM RK01
                      WHERE UNIQ = ?
              </og:hidden>

  機能分類
    画面部品
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドのサマリー

    - ### クラスから継承されたフィールド org.opengion.hayabusa.taglib.CommonTagSupport

      `BR, BUFFER_MIDDLE, CR`

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.BodyTagSupport

      `bodyContent`

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.TagSupport

      `id, pageContext`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.BodyTag

      `EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

  - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `HiddenTag()` デフォルトコンストラクター

  - ### メソッドのサマリー

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doAfterBody()` Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
    `int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `int` | `doStartTag()` Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
    `protected java.lang.String` | `makeTag()` 隠しフィールドを作成します。
    `protected void` | `release2()` タグリブオブジェクトをリリースします。
    `void` | `setDefaultVal(java.lang.String dv)` 【TAG】value属性に値がセットされていないとき使用する、初期値を指定します。
    `void` | `setKeys(java.lang.String ns)` 【TAG】名前をCSV形式で複数指定します(name属性とkeys属性は同時には登録できません)。
    `void` | `setName(java.lang.String nm)` 【TAG】名前を指定します(name属性とkeys属性は同時には登録できません)。
    `void` | `setVals(java.lang.String val)` 【TAG】keys属性に対応する値をCSV形式で複数指定します。
    `void` | `setValue(java.lang.String val)` 【TAG】値を指定します(この属性を使うとBODY部は無視されます)。
    `java.lang.String` | `toString()` このオブジェクトの文字列表現を返します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport

      `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, getParameterRows, 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`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.BodyTagSupport

      `doInitBody, getBodyContent, getPreviousOut, release, setBodyContent`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.TagSupport

      `findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド javax.servlet.jsp.tagext.Tag

      `getParent, setPageContext, setParent`

- - ### コンストラクタの詳細

    - #### HiddenTag

          public HiddenTag()

      デフォルトコンストラクター
      変更履歴:

        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`
      戻り値:
        後続処理の指示
      変更履歴:

        3.0.0.0 (2002/12/25) BodyHiddenTag 廃止に伴う、機能拡張。
        5.2.2.0 (2010/11/01) caseKey 、caseVal 属性対応

    - #### doAfterBody

          public int doAfterBody()

      Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
      定義:
        `doAfterBody` インタフェース内 `IterationTag`
      オーバーライド:
        `doAfterBody` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示(SKIP_BODY)
      変更履歴:

        3.0.0.0 (2002/12/25) BodyHiddenTag 廃止に伴う、機能拡張。
        3.1.1.0 (2003/03/28) ボディの内容を取得する処理を、CommonTagSupport で行う。
        3.5.5.5 (2004/04/23) value属性を追加

    - #### doEndTag

          public int doEndTag()

      Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
      定義:
        `doEndTag` インタフェース内 `Tag`
      オーバーライド:
        `doEndTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示
      変更履歴:

        3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。
        5.2.2.0 (2010/11/01) caseKey 、caseVal 属性対応

    - #### release2

          protected void release2()

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

        3.0.0.0 (2002/12/25) BodyHiddenTag 廃止に伴う、機能拡張。
        3.0.1.0 (2003/03/03) names属性とvals属性を追加
        3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。
        3.5.5.5 (2004/04/23) value属性を追加
        3.8.5.1 (2006/05/08) defaultVal 属性を追加

    - #### makeTag

          protected java.lang.String makeTag()

      隠しフィールドを作成します。 hidden( name ,value ) <input type="hidden" name="名前" value="隠し文字"> <input type="hidden" keys="名前1,名前2･･･" vals="値1,値2･･･">
      戻り値:
        隠しフィールドタグ文字列
      変更履歴:

        3.0.1.0 (2003/03/03) names属性とvals属性を追加
        3.5.5.5 (2004/04/23) hidden の出力に、XHTMLTag.hidden を使用します。
        3.8.5.1 (2006/05/08) defaultVal 属性を追加
        6.3.9.0 (2015/11/06) コンストラクタで初期化されていないフィールドを null チェックなしで利用している(findbugs)

      このメソッドは、nullを返しません

    - #### setName

          public void setName(java.lang.String nm)

      【TAG】名前を指定します(name属性とkeys属性は同時には登録できません)。
      パラメータ:
        `nm` - 名前
      説明:

             名前を指定します。
             name属性とkeys属性は同時には登録できません。

      変更履歴:

        3.0.1.0 (2003/03/03) names属性とvals属性を追加
        3.5.5.5 (2004/04/23) hidden の出力に、XHTMLTag.hidden を使用します。

    - #### setValue

          public void setValue(java.lang.String val)

      【TAG】値を指定します(この属性を使うとBODY部は無視されます)。
      パラメータ:
        `val` - 値
      説明:

             ここで値を設定した場合は、BODY 部の値は使用しません。
             value="{@value}" などとリクエスト変数を使用した場合に、その値が
             設定されていないケースでも、この属性を使用したとみなされます。

      変更履歴:

        3.5.5.5 (2004/04/23) hidden の出力に、XHTMLTag.hidden を使用します。

    - #### setKeys

          public void setKeys(java.lang.String ns)

      【TAG】名前をCSV形式で複数指定します(name属性とkeys属性は同時には登録できません)。
      パラメータ:
        `ns` - 名前(CSV形式)
      説明:

             名前をCSV形式で複数指定します。
             name属性とkeys属性は同時には登録できません。

      変更履歴:

        3.0.1.0 (2003/03/03) names属性とvals属性を追加
        4.0.0.0 (2007/06/06) names属性をkeys属性に変更

    - #### setVals

          public void setVals(java.lang.String val)

      【TAG】keys属性に対応する値をCSV形式で複数指定します。
      パラメータ:
        `val` - 値(CSV形式)
      説明:

             keys属性に対応する値をCSV形式で複数指定します。
             keys属性が設定されている場合のみ、使用されます。
             分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。
             こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。

      変更履歴:

        3.0.1.0 (2003/03/03) names属性とvals属性を追加
        3.5.6.2 (2004/07/05) CommonTagSupport#getCSVParameter を使用

    - #### setDefaultVal

          public void setDefaultVal(java.lang.String dv)

      【TAG】value属性に値がセットされていないとき使用する、初期値を指定します。
      パラメータ:
        `dv` - 初期値
      説明:

             注意：互換性維持の為、defaultVal を使用した場合の設定では null がセット
             されないようにしています。使用しない場合は、null のままです。

      変更履歴:

        3.8.5.1 (2006/05/08) defaultVal 属性を追加

    - #### toString

          public java.lang.String toString()

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

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.