org.opengion.hayabusa.taglib

## クラス UpdateTag

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

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

  推奨されていません。
  4.0.0 (2005/01/31) 廃止。tableUpdate を利用するようにしてください。

      @Deprecated
      public class UpdateTag
      extends QueryTag

  【廃止】SQL文を直接指定して、データベースに追加/更新/削除を行います(queryType="JDBCPrepared")。 存在チェックを行う場合は、tableExist タグと併用してください。 複雑な処理が必要な場合は、従来より使用しています、PLSQLをCALLする、 plsqlUpdateタグを使用してください。 ※ このタグは、Transaction タグの対象です。
  関連項目:
    直列化された形式
  形式サンプル:

         ●形式：<og:update command="…" names="…" queryType="JDBCPrepared" >
                     {@SQL}
                 </og:update>
         ●body：あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します)

         ●Tag定義：
           <og:update
               queryType          【廃止】Query を発行する為のクラスIDを指定します(初期値:JDBCPrepared)
               command            【TAG】コマンド(NEW,RENEW)をセットします(PlsqlUpdateTag,UpdateTag の場合は、ENTRY)
               scope              【TAG】キャッシュする場合のスコープ[request/page/session/applicaton]を指定します(初期値:session)
               displayMsg         【TAG】検索結果を画面上に表示するメッセージリソースIDを指定します (初期値:VIEW_DISPLAY_MSG[=])
               names              【TAG】PL/SQLを利用する場合の引数にセットすべき データの名称をCSV形式で複数指定します
               quotCheck          【TAG】リクエスト情報の クォーティション(') 存在チェックを実施するかどうか[true/false]を設定します(初期値:USE_SQL_INJECTION_CHECK)
               tableId            【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します
               dbid               【TAG】(通常は使いません)Queryオブジェクトを作成する時のDB接続IDを指定します
               xssCheck           【TAG】リクエスト情報の HTMLTag開始/終了文字(><) 存在チェックを実施するかどうか[true/false]を設定します (初期値:USE_XSS_CHECK[=true])
               debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
           >   ... Body ...
           </og:update>

         ●使用例
            ・引数/プロシジャーを他のJSPから渡す場合
            【copy.jsp】
                <og:value scope="session" key="names" value="CLM,NAME_JA,LABEL_NAME,KBSAKU,SYSTEM_ID,LANG" />
                <og:value scope="session" key="SQL" >
                  INSERT INTO GE41
                       (CLM,NAME_JA,LABEL_NAME,KBSAKU,SYSTEM_ID,LANG,
                       FGJ,DYSET,DYUPD,USRSET,USRUPD,PGUPD)
                  VALUES
                       (?,?,?,?,?,?,
                       '1','{@USER.YMDH}','{@USER.YMDH}','{@USER.ID}','{@USER.ID}','{@GUI.KEY}')
                </og:value>

            【entry.jsp】
                <og:update
                    command   = "{@command}"
                    queryType = "JDBCPrepared"
                    names     = "{@names}"  >
                {@SQL}
                </og:update>

                <!-- 前画面で指定のSQL文を削除します。(scope="session"なので削除が必要。) -->
                <og:value scope="session" key="names" command="REMOVE" />
                <og:value scope="session" key="SQL"   command="REMOVE" />

            ・引数/プロシジャーを直接書く場合
            【entry.jsp】
                <og:update
                    command   = "{@command}"
                    queryType = "JDBCPrepared"
                    names     = "CLM,NAME_JA,LABEL_NAME,KBSAKU,SYSTEM_ID,LANG"
                >
                    INSERT INTO GE41
                        (CLM,NAME_JA,LABEL_NAME,KBSAKU,SYSTEM_ID,LANG,
                         FGJ,DYSET,DYUPD,USRSET,USRUPD,PGUPD)
                    VALUES
                        (?,?,?,?,?,?,
                         '1','{@USER.YMDH}','{@USER.YMDH}','{@USER.ID}','{@USER.ID}','{@GUI.KEY}')
                </og:update>

  変更履歴:

    4.0.0.0 (2005/01/31) 廃止

  機能分類
    (廃止)ＤＢ登録
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    フィールド
    修飾子とタイプ | フィールドと説明
    --- | ---
    `static String` | `CMD_ENTRY` 推奨されていません。 command 引数に渡す事の出来る コマンド 登録"ENTRY"

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

      `CMD_NEW, CMD_RENEW, command, displayMsg, dyStart, errCode, errMessage, errMsgId, executeCount, maxRowCount, names, outMessage, quotCheck, skipRowCount, sql, stopError, table, tableId, xssCheck`

    - ### クラスから継承されたフィールド 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`

  - ### コンストラクタの概要

    コンストラクタ
    コンストラクタと説明
    `UpdateTag()` 推奨されていません。

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doEndTag()` 推奨されていません。 Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `int` | `doStartTag()` 推奨されていません。 Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
    `protected void` | `execute(Query query)` 推奨されていません。 Query を実行します。
    `void` | `setQueryType(String id)` 推奨されていません。 クラスが廃止

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

      `doAfterBody, getRequest, release2, setCheckNames, setCommand, setDbid, setDisplayMsg, setMainTrans, setMaxRowCount, setModifyType, setNames, setNotfoundMsg, setOutMessage, setOverflowMsg, setQuotCheck, setSkipRowCount, setStopError, setStopZero, setTableId, setTrace, setUseBeforeHtmlTag, setXssCheck, toString`

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

      `add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getTagName, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, 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`

- - ### フィールドの詳細

    - #### CMD_ENTRY

          public static final String CMD_ENTRY

      推奨されていません。
      command 引数に渡す事の出来る コマンド 登録"ENTRY"
      関連項目:
        定数フィールド値

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

    - #### UpdateTag

          public UpdateTag()

      推奨されていません。

  - ### メソッドの詳細

    - #### doStartTag

          public int doStartTag()

      推奨されていません。
      Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
      定義:
        `doStartTag` インタフェース内 `Tag`
      オーバーライド:
        `doStartTag` クラス内 `QueryTag`
      戻り値:
        後続処理の指示

    - #### doEndTag

          public int doEndTag()

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

        3.5.5.8 (2004/05/20) ErrorMessage オブジェクトを、正常終了時、クリア

    - #### execute

          protected void execute(Query query)

      推奨されていません。
      Query を実行します。
      オーバーライド:
        `execute` クラス内 `QueryTag`
      パラメータ:
        `query` - オブジェクト
      変更履歴:

        2.1.2.3 (2002/12/02) データベース更新時に、更新フラグをセットするように変更
        3.4.0.0 (2003/09/01) 登録エラー時のキーと値を表示するように変更。
        3.5.0.0 (2003/09/17) カラム名ではなく、カラム番号を先に求めておく方式に変更。
        3.5.6.0 (2004/06/18) DBRowHeader のパッケージプライベート化に伴なう変更
        4.0.0.0 (2005/01/31) getParameterRows() を使用するように変更

    - #### setQueryType

          @Deprecated
          public void setQueryType(String id)

      推奨されていません。 クラスが廃止
      【廃止】Query を発行する為のクラスIDを指定します(<a href="/gf/jsp/DOC03/index.jsp?command=NEW&GAMENID=DOC03&VERNO=5.9.17.1&VALUENAME=queryType" target="CONTENTS">初期値:JDBCPrepared</a>)。
      オーバーライド:
        `setQueryType` クラス内 `QueryTag`
      パラメータ:
        `id` - Query を発行する為の実クラス ID
      関連項目:
        `Queryのサブクラス`, `Query.execute( String[] )`
      説明:

             登録を実行する手段は、Query インターフェースの実装クラスになります。
             このタグでは、Query.execute( String[] ) メソッドが複数回呼ばれます。
             これは、DBTableModelの選択された行に対して、繰り返し呼ばれます。

             通常、このタグを使用する場合は、queryType="JDBCPrepared" を指定します。

             タグにより使用できる／出来ないがありますが、これは、org.opengion.hayabusa.db
             以下の Query_**** クラスの **** を与えます。
             これらは、Query インターフェースを継承したサブクラスです。
             {@og.doc03Link queryType Query_**** クラス}

      変更履歴:

        3.5.4.2 (2003/12/15) JavaDocコメント用にメソッド追加。

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