org.opengion.hayabusa.taglib

## クラス MailSenderTag2

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

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

      public class MailSenderTag2
      extends CommonTagSupport

       定型文およびパラメータの設定によるメールを送信するためのタグです。

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

         ●形式：<og:mailSender ptnId="…" action="…" from="…" to="…" />
         ●body：なし

         ●Tag定義：
           <og:mailSender2
               ptnId            ○【TAG】メール定型文のIDを指定します(必須)。
               from             ○【TAG】送信元(ＦＲＯＭ)の社員IDを指定します(必須)。
               action           ○【TAG】アクション[CHECK/SEND/NOCHECK]をセットします(必須)。
               addrCheck          【TAG】メールアドレスの構文とメールアカウントのチェックをするかどうか[true/false]を指定します
               to                 【TAG】送信先(ＴＯ)の社員ID、グループIDをCSV形式で指定します
               cc                 【TAG】送信先(ＣＣ)の社員ID、グループIDをCSV形式で指定します
               bcc                【TAG】送信先(ＢＣＣ)の社員ID、グループIDをCSV形式で指定します
               tableId            【TAG】(通常は使いません)宛先のDBTableModelを、sessionに登録するときのキーを指定します
               scope              【TAG】キャッシュする場合のスコープ[request/page/session/applicaton]を指定します(初期値:session)
               fileURL            【TAG】添付ファイルのセーブディレクトリを指定します (初期値:FILE_URL[=filetemp/])
               filename           【TAG】添付ファイル名をCSV形式で指定します
               useStop            【TAG】例外発生した場合、後続JSPの評価を中止するかどうか[true:中止/false:継続]を指定します
               debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
           />

         ●使用例
             <og:mailSender2 >
                ptnId     = PtnId      定型文ID(定型文マスタに登録されている定型文ID)
                action    = Action     アクション(CHECK:確認あり/SEND:確認後の送信/NOCHECK:確認なし)
                from      = From       送信元(送信者社員ID)
                to        = To         送信先(コンマ区切りで複数セット可能、社員ID、グループID)
                cc        = Cc         送信先(コンマ区切りで複数セット可能、社員ID、グループID)
                bcc       = Bcc        送信先(コンマ区切りで複数セット可能、社員ID、グループID)
                fileURL   = 添付ファイルのセーブディレクトリ
                filename  = 添付ファイル名(ローカルにセーブされたファイル名)(コンマ区切りで複数登録可能)
                addrCheck = true/false(メールアカウントの有効チェック)
                useStop   = true/false　エラー発生時に後続JSPの評価を中止する(true)/中止しない(false)
                scope     = request/session 宛先テーブルの格納スコープ(デフォルト：session)
                tableId   = TableId    宛先テーブルのID(通常はデフォルトのテーブルモデルID名称を利用します)
                debug     = true/false
             </og:mailSender >

         from には社員IDしかセットできません。
         to,cc,bccには社員ID、またはグループIDをコンマ区切りで複数セットできます。
         action:CHECK は送信前に、一度送信内容を確認したい場合に利用します。action=CHECKの場合、scopeにはsessionしかセットできません。
         action:SEND は確認済のメール文を送信する場合に利用します。
         action:NOCHECK は確認なしで送信したい場合に利用します。

  機能分類
    その他出力
  バージョン
    4.0
  作成者
    Sen.Li
  導入されたバージョン:
    JDK1.6

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

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

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

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

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

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `protected void` | `release2()` タグリブオブジェクトをリリースします。
    `void` | `setAction(String act)` 【TAG】アクション[CHECK/SEND/NOCHECK]をセットします。
    `void` | `setAddrCheck(String addrChk)` 【TAG】メールアドレスの構文とメールアカウントのチェックをするかどうか[true:する/false:しない]を指定します。
    `void` | `setBcc(String bccIds)` 【TAG】送信先(ＢＣＣ)の社員ID、グループIDをCSV形式で指定します。
    `void` | `setCc(String ccIds)` 【TAG】送信先(ＣＣ)の社員ID、グループIDをCSV形式で指定します。
    `void` | `setFilename(String fname)` 【TAG】添付ファイル名をCSV形式で指定します。
    `void` | `setFileURL(String url)` 【TAG】添付ファイルのセーブディレクトリを指定します (初期値:FILE_URL[=filetemp/])。
    `void` | `setFrom(String fromId)` 【TAG】送信元(ＦＲＯＭ)の社員IDを指定します。
    `void` | `setPtnId(String pid)` 【TAG】メール定型文のIDを指定します。
    `void` | `setTableId(String id)` 【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=h_tblmdl])。
    `void` | `setTo(String toIds)` 【TAG】送信先(ＴＯ)の社員ID、グループIDをCSV形式で指定します。
    `void` | `setUseStop(String stop)` 【TAG】例外発生した場合、後続JSPの評価を中止するかどうか[true:中止/false:継続]を指定します。
    `String` | `toString()` このオブジェクトの文字列表現を返します。

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

      `add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, doStartTag, 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`

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

    - #### MailSenderTag2

          public MailSenderTag2()

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

        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.

  - ### メソッドの詳細

    - #### doEndTag

          public int doEndTag()

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

        6.3.4.0 (2015/08/01) Arrays.toString から String.join に置き換え。
        6.4.2.0 (2016/01/29) ex.printStackTrace() を、ThrowUtil#ogStackTrace(Throwable) に置き換え。
        6.4.3.3 (2016/03/04) ConcurrentHashMap を受け取ることを明確にするため、I/FをConcurrentMapに変更します。
        6.4.3.4 (2016/03/11) String配列 から、Setに置き換えます。
        6.5.0.1 (2016/10/21) ErrorMessage をまとめるのと、直接 Throwable を渡します。

    - #### setAction

          public void setAction(String act)

      【TAG】アクション[CHECK/SEND/NOCHECK]をセットします。
      パラメータ:
        `act` - アクション [CHECK/SEND/NOCHECK]
      説明:

             送信前に、一度送信内容を確認する場合、"CHECK "をセットします。
             確認済のメール文を送信する場合、"SEND"をセットします。
             確認なしで送信する場合、"NOCHECK"をセットします。

    - #### setPtnId

          public void setPtnId(String pid)

      【TAG】メール定型文のIDを指定します。
      パラメータ:
        `pid` - 定型文ID
      説明:

             定型文マスタに定義されている定型文IDを指定します。

    - #### setFrom

          public void setFrom(String fromId)

      【TAG】送信元(ＦＲＯＭ)の社員IDを指定します。
      パラメータ:
        `fromId` - 送信元(ＦＲＯＭ)の社員ID
      説明:

             送信元(ＦＲＯＭ)の社員IDを指定します。社員マスタに存在している社員ID(例："C12345")しかセットできません。

    - #### setTo

          public void setTo(String toIds)

      【TAG】送信先(ＴＯ)の社員ID、グループIDをCSV形式で指定します。
      パラメータ:
        `toIds` - 送信先(ＴＯ)の社員ID、グループID(CSV形式)
      説明:

             複数のID(社員ID、グループID)をCSV形式でセットできます。
             グループIDはグループマスタ管理画面により定義する必要があります。"GP.XXXXX"の形式でセットします。

    - #### setCc

          public void setCc(String ccIds)

      【TAG】送信先(ＣＣ)の社員ID、グループIDをCSV形式で指定します。
      パラメータ:
        `ccIds` - 送信先(ＣＣ)の社員ID、グループID(CSV形式)
      説明:

             複数のID(社員ID、グループID)をCSV形式でセットできます。
             グループIDはグループマスタ管理画面により定義する必要があります。"GP.XXXXX"の形式でセットします。

    - #### setBcc

          public void setBcc(String bccIds)

      【TAG】送信先(ＢＣＣ)の社員ID、グループIDをCSV形式で指定します。
      パラメータ:
        `bccIds` - 送信先(ＢＣＣ)の社員ID、グループID(CSV形式)
      説明:

             複数のID(社員ID、グループID)をCSV形式でセットできます。
             グループIDはグループマスタ管理画面により定義する必要があります。"GP.XXXXX"の形式でセットします。

    - #### setFileURL

          public void setFileURL(String url)

      【TAG】添付ファイルのセーブディレクトリを指定します (初期値:FILE_URL[=filetemp/])。
      パラメータ:
        `url` - 添付ファイルのセーブディレクトリ
      関連項目:
        `SystemData.FILE_URL`
      説明:

             この属性で指定されるディレクトリに、添付ファイルが存在すると仮定します。
             指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、２文字目が、
             ":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、
             fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、
             さらに、各個人ID別のフォルダを作成して、そこを使用します。
             (初期値:システム定数のFILE_URL[=filetemp/])。

      変更履歴:

        6.4.2.1 (2016/02/05) URLの最後に、"/" を追加する処理を廃止。

    - #### setFilename

          public void setFilename(String fname)

      【TAG】添付ファイル名をCSV形式で指定します。
      パラメータ:
        `fname` - 添付ファイル名
      説明:

             複数ファイルをセットできます。
             設定方法は、カンマで区切って並べ複数指定できます。

    - #### setAddrCheck

          public void setAddrCheck(String addrChk)

      【TAG】メールアドレスの構文とメールアカウントのチェックをするかどうか[true:する/false:しない]を指定します。
      パラメータ:
        `addrChk` - 構文,アカウントチェック可否 [true:する/false:しない]
      説明:

             メールアドレスの構文とメールアカウントのチェック[true:する/false:しない]を指定します。
             メール文合成の段階では、メールアドレスの構文文法についてチェックします。
             メール送信の段階では、メールアカウントが有効かについてチェックします。
             "true"と指定する場合、ｴﾗｰが検出されたら、例外を投げて本タグの処理が中止されます。
             "false"と指定する場合、ｴﾗｰが検出されても、例外を投げません。

    - #### setUseStop

          public void setUseStop(String stop)

      【TAG】例外発生した場合、後続JSPの評価を中止するかどうか[true:中止/false:継続]を指定します。
      パラメータ:
        `stop` - 例外時に後続処理を中止可否 [true:中止/false:継続]
      説明:

             "true"と指定する場合、例外が発生したら、後続JSPが評価されません。
             "false"と指定する場合、例外が発生しても、後続JSPが評価されます。後続のJSPでは変数
             {@MAIL.ERR_CODE}で本タグの実行状況(ｴﾗｰ発生したか)を取得できます。

    - #### setTableId

          public void setTableId(String id)

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

             検索結果より、DBTableModelオブジェクトを作成します。これを、下流のviewタグ等に
             渡す場合に、通常は、session を利用します。その場合の登録キーです。
             query タグを同時に実行して、結果を求める場合、同一メモリに配置される為、
             この tableId 属性を利用して、メモリ空間を分けます。
            		(初期値:HybsSystem#TBL_MDL_KEY[=h_tblmdl])。

    - #### release2

          protected void release2()

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

    - #### toString

          public String toString()

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

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