org.opengion.hayabusa.taglib

## クラス ErrorTag

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

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

      public class ErrorTag
      extends CommonTagSupport

  JSPのエラー発生時の処理を行うタグです。 JSPでは、エラー発生時に、エラーページに飛ばす機能があります。現在のエンジンでは、 common/error.jsp ページ内で、処理を行っていますが、表示形式の整形、エラーメールの送信、 ログへの出力、エラー文字列の表示(Exceptionをそのままユーザーに見せるのは良くない) などの、細かい対応が必要です。 ここでは、それらをタグ化して、属性で指定できるようにしました。 エラー発生時にメールでエラー内容を飛ばすことも可能です。 これは、システムパラメータの COMMON_MAIL_SERVER に、ERROR_MAIL_TO_USERS に送信します。 ERROR_MAIL_TO_USERS が未設定の場合は、送信しません。
  関連項目:
    直列化された形式
  形式サンプル:

         ●形式：
             <og:error
                  useMail     = "[true|false]"                    メール送信可否を指定します(初期値:true)
                  logMsgType  = "[LONG|MEDIUM|SHORT|NONE]"        ログに書き込むメッセージの形式を指定(初期値:MEDIUM)
                  viewMsgType = "[LONG|MEDIUM|SHORT|NONE|ALLNONE|TABLE]"  画面に表示するメッセージの形式を指定(初期値:SHORT)
             />

         ●body：あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します)

         ●Tag定義：
           <og:error
               useMail            【TAG】メール送信可否を指定します(初期値:true)
               logMsgType         【TAG】ログに書き込むメッセージの形式を指定(初期値:MEDIUM)
               viewMsgType        【TAG】画面に書き込むメッセージの形式を指定(初期値:MEDIUM)
               debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
               skipPage           【TAG】エラーが発生した時に、以降の処理をスキップするか(初期値:false[=スキップしない])
           >   ... Body ...
           </og:error>

         ●使用例
             <og:error />

  変更履歴:

    4.0.0.0 (2005/08/31) 新規作成

  機能分類
    エラー処理
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

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

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

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

    コンストラクタ
    コンストラクタと説明
    `ErrorTag()`

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doAfterBody()` Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
    `int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `int` | `doStartTag()` Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
    `protected void` | `release2()` タグリブオブジェクトをリリースします。
    `void` | `setLogMsgType(String logType)` 【TAG】ログに書き込むメッセージの形式を指定(初期値:MEDIUM)。
    `void` | `setSkipPage(String flag)` 【TAG】エラーが発生した時に、以降の処理をスキップするか(初期値:false[=スキップしない])。
    `void` | `setUseMail(String flag)` 【TAG】メール送信可否を指定します(初期値:true)。
    `void` | `setViewMsgType(String viewType)` 【TAG】画面に書き込むメッセージの形式を指定(初期値:MEDIUM)。
    `String` | `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`

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

    - #### ErrorTag

          public ErrorTag()

  - ### メソッドの詳細

    - #### doStartTag

          public int doStartTag()

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

        4.1.0.0 (2008/01/11) 新規作成

    - #### doAfterBody

          public int doAfterBody()

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

        4.1.0.0 (2008/01/11) 新規作成

    - #### doEndTag

          public int doEndTag()

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

        4.0.0.0 (2005/12/31) UserInfo が存在しない場合の処理を追加します。
        4.1.0.0 (2008/01/11) ボディー部分のメッセージを表示する。
        5.0.0.4 (2009/08/28) ALLNONE追加
        5.1.8.0 (2010/07/01) テーブル形式メッセージ表示対応

    - #### release2

          protected void release2()

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

    - #### setUseMail

          public void setUseMail(String flag)

      【TAG】メール送信可否を指定します(初期値:true)。
      パラメータ:
        `flag` - メール送信可否
      説明:

             エラー発生時に管理者にメールを送信するかどうかを指定します。
             メールは、システムパラメータの COMMON_MAIL_SERVER に、ERROR_MAIL_TO_USERS に送信します。
             ERROR_MAIL_TO_USERS が未設定の場合は、送信しません。
             初期値は、true(送信する)です。

    - #### setLogMsgType

          public void setLogMsgType(String logType)

      【TAG】ログに書き込むメッセージの形式を指定(初期値:MEDIUM)。
      パラメータ:
        `logType` - ログに書き込むメッセージの形式 [LONG|MEDIUM|SHORT|NONE]
      関連項目:
        `setViewMsgType( String )`
      説明:

             ログ、および、メール送信時のメッセージの形式を指定します。
             エラー時のExceptionは、階層構造になっており、ルートまでさかのぼることが
             可能です。また、通常は、スタックとレース情報より、エラーのプログラムを
             特定することで、早く対応することが可能になります。
             メッセージの形式には、LONG|MEDIUM|SHORT|NONE が指定できます。
             ボディー部分に記述されたメッセージは全ての場合で出力されます。

               ・LONG  :すべてのスタックトレース情報を取得します。
               ・MEDIUM:org.opengion以下のパッケージのみスタックトレース情報を取得します。
               ・SHORT :メッセージ部分のみ情報を取得します。
               ・NONE  :取得しません。

             初期値は、MEDIUM です。

    - #### setViewMsgType

          public void setViewMsgType(String viewType)

      【TAG】画面に書き込むメッセージの形式を指定(初期値:MEDIUM)。
      パラメータ:
        `viewType` - 画面に出力するメッセージの形式 [LONG|MEDIUM|SHORT|NONE|ALLNONE|TABLE]
      関連項目:
        `setLogMsgType( String )`
      説明:

             画面に表示するメッセージの形式を指定します。
             エラー時のExceptionは、階層構造になっており、ルートまでさかのぼることが
             可能です。また、通常は、スタックとレース情報より、エラーのプログラムを
             特定することで、早く対応することが可能になります。
             メッセージの形式には、LONG|MEDIUM|SHORT|NONE|ALLNONE|TABLE が指定できます。
             ボディー部分に記述されたメッセージは全ての場合で出力されます。

               ・LONG   :すべてのスタックトレース情報を取得します。
               ・MEDIUM :org.opengion以下のパッケージのみスタックトレース情報を取得します。
               ・SHORT  :メッセージ部分のみ情報を取得します。
               ・NONE   :取得しません。
               ・ALLNONE:ヘッダも表示しません。
               ・TABLE  :テーブル形式でエラーメッセージのみを表示します。

             初期値は、SHORT です。

    - #### setSkipPage

          public void setSkipPage(String flag)

      【TAG】エラーが発生した時に、以降の処理をスキップするか(初期値:false[=スキップしない])。
      パラメータ:
        `flag` - 以降の処理のスキップするか
      説明:

             エラーが発生した時に、以降の処理をスキップするかを設定します。
             trueが設定された場合は、以降の処理をスキップします。

             初期値は、false(スキップしない) です。

    - #### toString

          public String toString()

      デバッグ時の文字列を返します。
      オーバーライド:
        `toString` クラス内 `CommonTagSupport`
      戻り値:
        このオブジェクトのデバッグ表現文字列

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