クラス ErrorTag

  • すべての実装されたインタフェース:
    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 ErrorTag
    extends CommonTagSupport
    JSPのエラー発生時の処理を行うタグです。 JSPでは、エラー発生時に、エラーページに飛ばす機能があります。現在のエンジンでは、 common/error.jsp ページ内で、処理を行っていますが、表示形式の整形、エラーメールの送信、 ログへの出力、エラー文字列の表示(Exceptionをそのままユーザーに見せるのは良くない) などの、細かい対応が必要です。 ここでは、それらをタグ化して、属性で指定できるようにしました。 エラー発生時にメールでエラー内容を飛ばすことも可能です。 これは、システムパラメータの COMMON_MAIL_SERVER に、ERROR_MAIL_TO_USERS に送信します。 ERROR_MAIL_TO_USERS が未設定の場合は、送信しません。
    関連項目:
    直列化された形式
    変更履歴:
    4.0.0.0 (2005/08/31) 新規作成
    機能分類
    エラー処理
    形式サンプル:
    ●形式: <og:error useMail = "[true|false]" メール送信可否を指定します(初期値:true) logMsgType = "[LONG|MEDIUM|SHORT|NONE]" ログに書き込むメッセージの形式を指定(初期値:MEDIUM) viewMsgType = "[LONG|MEDIUM|SHORT|NONE|ALLNONE|TABLE|TABLE_ST]" 画面に表示するメッセージの形式を指定(初期値:SHORT) /> ●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します) ●Tag定義: <og:error useMail 【TAG】メール送信可否を指定します(初期値:true) logMsgType 【TAG】ログに書き込むメッセージの形式を指定(初期値:MEDIUM) viewMsgType 【TAG】画面に書き込むメッセージの形式を指定(初期値:SHORT) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) skipPage 【TAG】エラーが発生した時に、以降の処理をスキップするか(初期値:false[=スキップしない]) > ... Body ... </og:error> ●使用例 <og:error />
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • ErrorTag

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

      • doStartTag

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

        public int doAfterBody()
        Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
        定義:
        doAfterBody インタフェース内 javax.servlet.jsp.tagext.IterationTag
        オーバーライド:
        doAfterBody クラス内 CommonTagSupport
        戻り値:
        後続処理の指示(SKIP_BODY)
        変更履歴:
        4.1.0.0 (2008/01/11) 新規作成
      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 javax.servlet.jsp.tagext.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) テーブル形式メッセージ表示対応, 6.2.1.0 (2015/03/13) UserInfo が null の場合の処理を追加。, 6.4.2.0 (2016/01/29) LogSenderの廃止に伴い、LogWriter を直接呼び出します。, 6.7.7.1 (2017/04/07) viewMsgTypeに、TABLE_ST の追加(スタックトレースを含む詳細), 6.9.0.0 (2018/01/31) エラー表示情報の内容を修正します。
      • release2

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

        public void setUseMail​(String flag)
        【TAG】エラー発生時に管理者にメール送信するかどうかを指定します(初期値:true)。
        パラメータ:
        flag - メール送信可否 [true:する/false:しない]
        説明:
        メールは、システムパラメータの 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 : テーブル形式でエラーメッセージのみを表示します。 ・TABLE_ST: テーブル形式+スタックトレース情報。" ); 初期値は、SHORT です。
      • setSkipPage

        public void setSkipPage​(String flag)
        【TAG】エラーが発生した時に、以降の処理をスキップするか(初期値:false[=スキップしない])。
        パラメータ:
        flag - 以降の処理のスキップ [true:する/false:しない]
        説明:
        エラーが発生した時に、以降の処理をスキップするかを設定します。 trueが設定された場合は、以降の処理をスキップします。 初期値は、false(スキップしない) です。
      • toString

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