クラス MailSenderTag

  • すべての実装されたインタフェース:
    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 MailSenderTag
    extends CommonTagSupport
    メールを送信するための簡易タグです。 Body 部に、メッセージを記述します。
    関連項目:
    直列化された形式
    機能分類
    その他出力
    形式サンプル:
    ●形式:<og:mailSender from="…" to="…" subject="・・・"/> ●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します) ●Tag定義: <og:mailSender subject 【TAG】タイトルを指定します from 【TAG】送信元(FROM)アドレスを指定します to 【TAG】送信先(TO)アドレスをCSV形式で指定します cc 【TAG】送信先(CC)アドレスをCSV形式で指定します bcc 【TAG】送信先(BCC)アドレスをCSV形式で指定します replyTo 【TAG】返信先(replyTo)アドレスをCSV形式で指定します host 【TAG】メールサーバーを指定します (初期値:COMMON_MAIL_SERVER[=]) smtpPort 【TAG】SMTPポートをCSV形式で指定します(初期値:SMTP_PORT) // 5.8.1.1 (2014/11/14) authType 【TAG】認証方式 初期値:MAIL_SEND_AUTH // 5.8.1.1 (2014/11/14) authPort 【TAG】認証ポート 初期値:MAIL_SEND_AUTH_PORT // 5.8.1.1 (2014/11/14) authUser 【TAG】認証ユーザー 初期値:MAIL_SEND_AUTH_USER // 5.8.1.1 (2014/11/14) authPass 【TAG】認証パスワード 初期値:MAIL_SEND_AUTH_PASSWORD // 5.8.1.1 (2014/11/14) useSSL 【TAG】SSL接続[false/true] 初期値:MAIL_SEND_USE_SSL // 6.3.8.0 (2015/09/11) charset 【TAG】文字エンコーディングを指定します (初期値:MAIL_DEFAULT_CHARSET[=ISO-2022-JP]) fileURL 【TAG】添付ファイルのセーブディレクトリを指定します (初期値:FILE_URL[=filetemp/]) filename 【TAG】添付ファイル名をCSV形式で指定します useLDAP 【TAG】メールアドレスをLDAPを利用して取得するかどうか[true/false]を指定します(初期値:false) ldapKey 【TAG】アドレスを検索するキーを指定します(初期値:LDAP_MAILSEND_KEY[=uid] C社員番号) ldapVals 【TAG】LDAP検索時の属性名を指定します(初期値:LDAP_MAILSEND_VALS[=cn,mail]) useDB 【TAG】メールアドレスをDB(GE35)を利用して取得するかどうか[true/false]を指定します(初期値:false) useHistory 【TAG】GE32,34に送信履歴を保存するかどうか[true/false]を指定します(初期値:USE_MAILSENDER_HISTORY) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) > ... Body ... </og:mailSender> ●使用例 <og:mailSender from="C00000" to="C99999" subject="{@SUBJECT}" > メール内容 </og:mailSender > charset = キャラクタセット (例:Windows-31J , ISO-2022-JP) from = From 送信元 to = To 送信先(複数登録可能) cc = Cc 送信先(複数登録可能) bcc = Bcc 送信先(複数登録可能) replyTo = ReplyTo 返信先先(複数登録可能) useLDAP = false/true メールアドレスをLDAPを利用して取得するかどうか ldapKey = "uid" アドレスを検索するキー(初期値:システムリソース C社員番号) ldapVals = "cn,mail" LDAP検索時の属性名。ひとつならアドレス。2つなら名前とアドレス host = SMTPサーバー名 smtpPort = SMTPポート 初期値:SMTP_PORT // 5.8.1.1 (2014/11/14) authType = 認証方式 初期値:MAIL_SEND_AUTH // 5.8.1.1 (2014/11/14) authPort = 認証ポート 初期値:MAIL_SEND_AUTH_PORT // 5.8.1.1 (2014/11/14) authUser = 認証ユーザー 初期値:MAIL_SEND_AUTH_USER // 5.8.1.1 (2014/11/14) authPass = 認証パスワード 初期値:MAIL_SEND_AUTH_PASSWORD // 5.8.1.1 (2014/11/14) useSSL = SSL接続[false/true] 初期値:MAIL_SEND_USE_SSL // 6.3.8.0 (2015/09/11) subject = タイトル fileURL = 添付ファイルのセーブディレクトリ filename = 添付ファイル名(ローカルにセーブされたファイル名)(複数登録可能) debug = true/false; 複数登録可能な個所は、CSV形式で、複数登録できます。 アドレス(from,to,cc,bcc,replyTo)は、『"名称" <メールアドレス>』形式が 指定できます。< と > で囲まれた範囲がメールアドレスになります。 名称には、漢字が使用できます。 host は、システムパラメータ の COMMON_MAIL_SERVER 属性が初期値で設定されます。 charset は、システムパラメータ の MAIL_DEFAULT_CHARSET 属性が初期値で設定されます。
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • MailSenderTag

        public MailSenderTag()
        デフォルトコンストラクター
        変更履歴:
        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 )
        変更履歴:
        6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。, 5.9.29.2 (2018/02/16) STARTTLS対応(キーワードをVer5 にあわせます)
      • doAfterBody

        public int doAfterBody()
        Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。
        定義:
        doAfterBody インタフェース内 javax.servlet.jsp.tagext.IterationTag
        オーバーライド:
        doAfterBody クラス内 CommonTagSupport
        戻り値:
        後続処理の指示(SKIP_BODY)
        変更履歴:
        3.1.1.0 (2003/03/28) ボディの内容を取得する処理を、CommonTagSupport で行う。, 5.9.2.3 (2015/11/27) messageをインスタンス変数に変更。
      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 3.7.1.0 (2005/04/15) LDAP検索 新規追加, 5.6.9.3 (2013/10/25) 送信後に履歴を残す(history追加)。mailSender2同様、ここがエラーでもメール送信は完了しているので注意。, 5.9.3.0 (2015/12/04) useHistory対応
      • release2

        protected void release2()
        タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
        オーバーライド:
        release2 クラス内 CommonTagSupport
        変更履歴:
        2.0.0.4 (2002/09/27) カスタムタグの release() メソッドを、追加, 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 3.7.1.0 (2005/04/15) LDAP検索 useLDAP,ldapKey,ldapVals 属性追加, 5.6.7.0 (2013/07/27) ldapKey,ldapValsの取得をリソースに変更, 5.6.9.3 (2013/10/25) useDB追加, 5.8.1.1 (2014/11/14) メール送信時認証追加。smtpPort,authPort,authType,authUser,authPass, 6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。, 5.6.9.3 (2013/10/25) 送信後に履歴を残す(history追加)。, 5.9.29.2 (2018/02/16) STARTTLS対応(キーワードをVer5 にあわせます)
      • setFrom

        public void setFrom​(String fromAdrs)
        【TAG】送信元(FROM)アドレスを指定します。
        パラメータ:
        fromAdrs - 送信元(FROM)アドレス
        説明:
        送信元(FROM)アドレスを指定します。
      • setTo

        public void setTo​(String toAdrs)
        【TAG】送信先(TO)アドレスをCSV形式で指定します。
        パラメータ:
        toAdrs - 送信先(TO)アドレス(CSV形式)
        変更履歴:
        3.5.6.2 (2004/07/05) 先に配列に分解してからリクエスト変数の値を取得, 3.5.6.4 (2004/07/16) 先にリクエスト変数の値を取得してから配列に分解
        説明:
        複数アドレスをCSV形式でセットできます。
      • setCc

        public void setCc​(String ccAdrs)
        【TAG】送信先(CC)アドレスをCSV形式で指定します。
        パラメータ:
        ccAdrs - 送信先(CC)アドレス(CSV形式)
        変更履歴:
        3.5.6.2 (2004/07/05) 先に配列に分解してからリクエスト変数の値を取得, 3.5.6.4 (2004/07/16) 先にリクエスト変数の値を取得してから配列に分解
        説明:
        複数アドレスをCSV形式でセットできます。
      • setBcc

        public void setBcc​(String bccAdrs)
        【TAG】送信先(BCC)アドレスをCSV形式で指定します。
        パラメータ:
        bccAdrs - 送信先(BCC)アドレス(CSV形式)
        変更履歴:
        3.5.6.2 (2004/07/05) 先に配列に分解してからリクエスト変数の値を取得, 3.5.6.4 (2004/07/16) 先にリクエスト変数の値を取得してから配列に分解
        説明:
        複数アドレスをCSV形式でセットできます。
      • setReplyTo

        public void setReplyTo​(String replyToAdrs)
        【TAG】返信先(replyTo)アドレスをCSV形式で指定します。
        パラメータ:
        replyToAdrs - 返信先(replyTo)アドレス(CSV形式)
        変更履歴:
        3.5.6.6 (2004/08/23) 新規追加
        説明:
        複数アドレスをCSV形式でセットできます。
      • setHost

        public void setHost​(String hst)
        【TAG】メールサーバーを指定します (初期値:COMMON_MAIL_SERVER[=])。
        パラメータ:
        hst - メールサーバー
        関連項目:
        SystemData.COMMON_MAIL_SERVER
        変更履歴:
        3.5.6.6 (2004/08/23) 初期値を考慮するように変更。
        説明:
        メールサーバーを指定します。 (初期値:システム定数のCOMMON_MAIL_SERVER[=])。
      • setSubject

        public void setSubject​(String subjct)
        【TAG】タイトルを指定します。
        パラメータ:
        subjct - タイトル
        説明:
        タイトルを指定します。
      • setFilename

        public void setFilename​(String fname)
        【TAG】添付ファイル名をCSV形式で指定します。
        パラメータ:
        fname - 添付ファイル名(CSV形式)
        変更履歴:
        3.5.6.6 (2004/08/23) 複数ファイル指定方法を、重複リクエストからCSV形式に変更
        説明:
        複数ファイルをセットできます。 設定方法は、カンマで区切って並べ複数指定できます。
      • setCharset

        public void setCharset​(String chset)
        【TAG】文字エンコーディングを指定します (初期値:MAIL_DEFAULT_CHARSET[=])。
        パラメータ:
        chset - 文字エンコーディング
        関連項目:
        SystemData.MAIL_DEFAULT_CHARSET
        説明:
        文字エンコーディングは、メール本文に対するエンコーディング指定です。 これは、Windows-31J 、MS932、Shift_JIS のどれかが指定された場合、 『指定の文字コード + 8bit 送信』します。 それ以外の指定は、『ISO-2022-JP に独自変換 + 7bit 送信』になります。 (初期値:システム定数のMAIL_DEFAULT_CHARSET[=])。
      • setFileURL

        public void setFileURL​(String url)
        【TAG】添付ファイルのセーブディレクトリを指定します (初期値:FILE_URL[=])。
        パラメータ:
        url - 添付ファイルのセーブディレクトリ
        関連項目:
        SystemData.FILE_URL
        変更履歴:
        4.0.0.0 (2005/01/31) StringUtil.urlAppend メソッドの利用, 4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。, 6.4.2.1 (2016/02/05) URLの最後に、"/" を追加する処理を廃止。
        説明:
        この属性で指定されるディレクトリに、添付ファイルが存在すると仮定します。 指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、2文字目が、 ":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、 fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、 さらに、各個人ID別のフォルダを作成して、そこを使用します。 (初期値:システム定数のFILE_URL[=])。
      • setUseLDAP

        public void setUseLDAP​(String useLDAP)
        【TAG】メールアドレスをLDAPを利用して取得するかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        useLDAP - メールアドレスのLDAP利用 [true:利用する/false:利用しない]
        変更履歴:
        3.7.1.0 (2005/04/15) LDAP検索 新規追加
        説明:
        LDAP のメールアドレスを取得する場合は、true をセットします。false の場合は、 from,to,cc,bcc,replyTo の設定値がそのまま使用されます。 上記アドレスに、@ を含む場合は、LDAP を検索せず、メールアドレスとして そのまま使用します。LDAP の検索結果が存在しない場合は、不正なアドレスとして、 エラーとします。 初期値は、false です。
      • setLdapKey

        public void setLdapKey​(String ldapKey)
        【TAG】アドレスを検索するキーを指定します(初期値:uid C社員番号)。
        パラメータ:
        ldapKey - アドレスを検索するキー
        変更履歴:
        3.7.1.0 (2005/04/15) LDAP検索 新規追加
        説明:
        LDAP のメールアドレスを取得する場合の、検索するキーを指定します。 from,to,cc,bcc,replyTo の設定値を、このキーにセットして、検索します。 uid C社員番号 、employeeNumber 社員番号 などが考えられます。 初期値は、uid(C社員番号)です。 このキーで複数の検索結果が得られた場合は、エラーとします。
      • setLdapVals

        public void setLdapVals​(String ldapVals)
        【TAG】LDAP検索時の属性名を指定します(初期値:cn,mail)。
        パラメータ:
        ldapVals - LDAP検索時の属性名
        変更履歴:
        3.7.1.0 (2005/04/15) LDAP検索 新規追加
        説明:
        LDAPを検索する場合、"担当者名"<メールアドレス>形式のメールアドレスを作成する 場合、検索する属性値を指定します。 ひとつならアドレス。2つなら名前とアドレスの順で指定されたと認識します。
      • setUseDB

        public void setUseDB​(String flag)
        【TAG】メールアドレスをGE35を利用して取得するかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        flag - メールアドレスのGE35利用 [true:利用する/false:利用しない]
        変更履歴:
        5.6.9.3 (2013/10/25) 新規追加
        説明:
        GE35からメールアドレスを取得する場合は、true をセットします。false の場合は、 from,to,cc,bcc,replyTo の設定値がそのまま使用されます。 上記アドレスに、@ を含む場合は、DB を検索せず、メールアドレスとして そのまま使用します。DB の検索結果が存在しない場合は、不正なアドレスとして、 エラーとします。 useLDAPと同時に設定されている場合は、LDAP設定が優先されます。 初期値は、false です。
      • setSmtpPort

        public void setSmtpPort​(String port)
        【TAG】メール送信ポート番号をセットします (初期値:システム定数のSMTP_PORT[=])。
        パラメータ:
        port - SMTPポート
        変更履歴:
        5.8.1.1 (2014/11/14) メール送信時認証「POP_BEFORE_SMTP」追加
        説明:
        初期値は、システム定数のSMTP_PORT を使用します。 (初期値:システム定数のSMTP_PORT[=])。
      • setAuthType

        public void setAuthType​(String type)
        【TAG】メール送信時認証方式をセットします (初期値:システム定数のMAIL_SEND_AUTH[=])。
        パラメータ:
        type - 認証方式
        変更履歴:
        5.8.1.1 (2014/11/14) メール送信時認証「POP_BEFORE_SMTP」追加, 6.2.4.1 (2015/05/22) SMTP_AUTH 対応。「SMTP_AUTH」追加(コメントのみ修正)
        説明:
        認証を行う場合は「POP_BEFORE_SMTP」または、「SMTP_AUTH」が指定できます。 認証時には認証ユーザと認証パスワードを設定する必要があります。 初期値は、システム定数のMAIL_SEND_AUTH を使用します。 (初期値:システム定数のMAIL_SEND_AUTH[=])。
      • setAuthPort

        public void setAuthPort​(String port)
        【TAG】メール送信時認証ポートをセットします (初期値:システム定数のMAIL_SEND_AUTH_PORT[=])。
        パラメータ:
        port - 認証ポート
        変更履歴:
        5.8.1.1 (2014/11/14) メール送信時認証「POP_BEFORE_SMTP」追加
        説明:
        「POP_BEFORE_SMTP」認証を行う場合に、POPサーバーに接続するポート番号を指定します。 指定しない場合は、POP3デフォルトポートを使用します。 初期値は、システム定数のMAIL_SEND_AUTH_PORT を使用します。 (初期値:システム定数のMAIL_SEND_AUTH_PORT[=])。
      • setAuthUser

        public void setAuthUser​(String user)
        【TAG】メール送信認証ユーザをセットします (初期値:システム定数のMAIL_SEND_AUTH_USER[=])。
        パラメータ:
        user - 認証ユーザ
        変更履歴:
        5.8.1.1 (2014/11/14) メール送信時認証「POP_BEFORE_SMTP」追加
        説明:
        初期値は、システム定数のMAIL_SEND_AUTH_USER を使用します。 (初期値:システム定数のMAIL_SEND_AUTH_USER[=])。
      • setAuthPass

        public void setAuthPass​(String pass)
        【TAG】メール送信認証パスワードをセットします (初期値:システム定数のMAIL_SEND_AUTH_PASSWORD[=])。
        パラメータ:
        pass - 認証パスワード
        変更履歴:
        5.8.1.1 (2014/11/14) メール送信時認証「POP_BEFORE_SMTP」追加
        説明:
        初期値は、システム定数のMAIL_SEND_AUTH_PASSWORD を使用します。 (初期値:システム定数のMAIL_SEND_AUTH_PASSWORD[=])。
      • setUseTLS

        public void setUseTLS​(String flag)
        【TAG】メール送信時のSTARTTLS利用の設定。
        パラメータ:
        flag - TLS利用有無
        変更履歴:
        5.9.29.2 (2018/02/16) STARTTLS対応(キーワードをVer5 にあわせます)
        説明:
        初期値は、システム定数のMAIL_SEND_USE_STARTTLSを使用します。 (初期値:システム定数のMAIL_SEND_AUTH_USER[=])。
      • setUseSSL

        public void setUseSSL​(String isSSL)
        【TAG】SSL接続するかどうかをセットします (初期値:システム定数のMAIL_SEND_USE_SSL[=])。
        パラメータ:
        isSSL - SSL接続するかどうか [true:する/false:しない]
        変更履歴:
        6.3.8.0 (2015/09/11) SSL接続するかどうか
        説明:
        SSL接続する場合は、true を設定します。 (初期値:システム定数のMAIL_SEND_USE_SSL[=])。
      • setUseHistory

        public void setUseHistory​(String flag)
        【TAG】履歴に残すかどうかをセットします (初期値:システム定数のUSE_MAILSENDER_HISTORY[=])。
        パラメータ:
        flag - 履歴に残すかどうか [true:残す/false:残さない]
        変更履歴:
        5.9.2.3 (2015/11/27) 追加
        説明:
        初期値は、システム定数のUSE_MAILSENDER_HISTORY を使用します。 trueを設定した場合、システムID、送信元アドレス、送信先アドレス、タイトル、本文について GE32,34に履歴として保存されます。 (初期値:システム定数のUSE_MAILSENDER_HISTORY[=])。
      • getAddressArray

        public String[] getAddressArray​(String... src)
        引数のアドレス配列を社員マスタ(GE35)で変換して返します。 グループIDは利用しません。
        パラメータ:
        src - 引数配列(可変長引数)
        戻り値:
        変換後アドレス配列
        変更履歴:
        5.6.9.3 (2013/10/25) 新規追加
        このメソッドは、nullを返しません
      • toString

        public String toString()
        このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
        オーバーライド:
        toString クラス内 CommonTagSupport
        戻り値:
        このクラスの文字列表現
        変更履歴:
        5.6.9.3 (2013/10/25) useDBの対応
        このメソッドは、nullを返しません