パッケージ org.opengion.fukurou.mail

クラス MailTX


  • public class MailTX
    extends java.lang.Object
    MailTX は、SMTPプロトコルによるメール送信プログラムです。 E-Mail で日本語を送信する場合、ISO-2022-JP(JISコード)化して、7bit で エンコードして送信する必要がありますが、Windows系の特殊文字や、unicodeと 文字のマッピングが異なる文字などが、文字化けします。 対応方法としては、 1.Windows-31J + 8bit 送信 2.ISO-2022-JP に独自変換 + 7bit 送信 の方法があります。 今回、この2つの方法について、対応いたしました。 ※ 6.3.8.0 (2015/09/11) useSSL属性=true に設定すると、protocolに、smtps を使用します。
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • フィールドの概要

      フィールド 
      修飾子とタイプ フィールド 説明
      static java.lang.String MAILER
      メーラーの名称 "openGion Mail Ver 6.0"
    • コンストラクタの概要

      コンストラクタ 
      コンストラクタ 説明
      MailTX​(java.lang.String host)
      メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。
      MailTX​(java.lang.String host, java.lang.String charset)
      メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。
      MailTX​(java.lang.String host, java.lang.String charset, java.lang.String smtpPort, java.lang.String authType, java.lang.String authPort, java.lang.String authUser, java.lang.String authPass, boolean useStarttls, boolean useSSL)
      メールサーバーと文字エンコーディングを指定して、オブジェクトを構築します。
    • メソッドの概要

      すべてのメソッド staticメソッド インスタンス・メソッド concreteメソッド 
      修飾子とタイプ メソッド 説明
      void clearBcc()
      送信先(BCC)アドレス配列をクリアします。
      void clearCc()
      送信先(CC)アドレス配列をクリアします。
      void clearTo()
      送信先(TO)アドレス配列をクリアします。
      static void main​(java.lang.String[] args)
      コマンドから実行できる、テスト用の main メソッドです。
      void reset()
      MimeMessageをリセットします。
      void sendmail()
      メールを送信します。
      void setBcc​(java.lang.String... bcc)
      送信先(BCC)アドレス配列をセットします。
      void setCc​(java.lang.String... cc)
      送信先(CC)アドレス配列をセットします。
      void setDebug​(boolean debug)
      デバッグ情報の表示を行うかどうかをセットします。
      void setFilename​(java.lang.String... fname)
      添付ファイル名配列をセットします。
      void setFrom​(java.lang.String from)
      送信元(FROM)アドレスをセットします。
      void setMessage​(java.lang.String msg)
      メッセージ(本文)をセットします。
      void setReplyTo​(java.lang.String... replyTo)
      返信元(replyTo)アドレス配列をセットします。
      void setSubject​(java.lang.String subject)
      タイトルをセットします。
      void setTo​(java.lang.String... to)
      送信先(TO)アドレス配列をセットします。
      • クラスから継承されたメソッド java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • フィールドの詳細

      • MAILER

        public static final java.lang.String MAILER
        メーラーの名称 "openGion Mail Ver 6.0"
        関連項目:
        定数フィールド値
    • コンストラクタの詳細

      • MailTX

        public MailTX​(java.lang.String host)
        メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。 デフォルト文字エンコーディングは、ISO-2022-JP です。
        パラメータ:
        host - メールサーバー
        例外:
        java.lang.IllegalArgumentException - 引数が null の場合。
      • MailTX

        public MailTX​(java.lang.String host,
                      java.lang.String charset)
        メールサーバーとデフォルト文字エンコーディングを指定して、オブジェクトを構築します。 文字エンコーディングには、Windwos-31J , MS932 , UTF-8 , ISO-2022-JP を指定できます。
        パラメータ:
        host - メールサーバー
        charset - 文字エンコーディング
        例外:
        java.lang.IllegalArgumentException - 引数が null の場合。
        変更履歴:
        5.4.3.2 (2012/01/06) 認証対応のため, 5.8.1.1 (2014/11/14) 認証ポート追加, 6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。
      • MailTX

        public MailTX​(java.lang.String host,
                      java.lang.String charset,
                      java.lang.String smtpPort,
                      java.lang.String authType,
                      java.lang.String authPort,
                      java.lang.String authUser,
                      java.lang.String authPass,
                      boolean useStarttls,
                      boolean useSSL)
        メールサーバーと文字エンコーディングを指定して、オブジェクトを構築します。 認証を行う場合は認証方法を指定します。 文字エンコーディングには、Windwos-31J , MS932 , ISO-2022-JP を指定できます。
        パラメータ:
        host - メールサーバー
        charset - 文字エンコーディング
        smtpPort - SMTPポート
        authType - 認証方法(POP_BEFORE_SMTP , SMTP_AUTH)
        authPort - 認証ポート
        authUser - 認証ユーザ
        authPass - 認証パスワード
        useStarttls - 暗号化通信設定(STARTTLS) 5.9.29.2
        useSSL - SSL接続するかどうか
        例外:
        java.lang.IllegalArgumentException - 引数が null の場合。
        変更履歴:
        5.1.9.0 (2010/08/01) mail.smtp.localhostの設定追加, 5.4.3.2 (2012/01/06) 認証対応(POP Before SMTP)。引数3つ追加(将来的にはAuthentication対応?), 5.8.1.1 (2014/11/14) 認証ポート追加, 6.2.4.1 (2015/05/22) SMTP_AUTH 対応, 6.3.8.0 (2015/09/11) SSL接続するかどうかを指定するパラメータを追加します。, 5.9.29.2 (2018/02/16) STARTTLS対応(キーワードをVer5 にあわせます), 5.10.20.1 (2020/03/03) 添付ファイル名文字化け対策
    • メソッドの詳細

      • sendmail

        public void sendmail()
        メールを送信します。
      • reset

        public void reset()
        MimeMessageをリセットします。 sendmail() でメールを送信後、セッションを閉じずに別のメールを送信する場合、 リセットしてから、各種パラメータを再設定してください。 その場合は、すべてのパラメータが初期化されていますので、もう一度 設定しなおす必要があります。
      • setFrom

        public void setFrom​(java.lang.String from)
        送信元(FROM)アドレスをセットします。
        パラメータ:
        from - 送信元(FROM)アドレス
      • setTo

        public void setTo​(java.lang.String... to)
        送信先(TO)アドレス配列をセットします。
        パラメータ:
        to - 送信先(TO)アドレス配列(可変長引数)
      • setCc

        public void setCc​(java.lang.String... cc)
        送信先(CC)アドレス配列をセットします。
        パラメータ:
        cc - 送信先(CC)アドレス配列(可変長引数)
      • setBcc

        public void setBcc​(java.lang.String... bcc)
        送信先(BCC)アドレス配列をセットします。
        パラメータ:
        bcc - 送信先(BCC)アドレス配列(可変長引数)
      • clearTo

        public void clearTo()
        送信先(TO)アドレス配列をクリアします。
        変更履歴:
        4.3.6.0 (2009/04/01) 新規追加
      • clearCc

        public void clearCc()
        送信先(CC)アドレス配列をクリアします。
        変更履歴:
        4.3.6.0 (2009/04/01) 新規追加
      • clearBcc

        public void clearBcc()
        送信先(BCC)アドレス配列をクリアします。
        変更履歴:
        4.3.6.0 (2009/04/01) 新規追加
      • setReplyTo

        public void setReplyTo​(java.lang.String... replyTo)
        返信元(replyTo)アドレス配列をセットします。
        パラメータ:
        replyTo - 返信元(replyTo)アドレス配列(可変長引数)
      • setSubject

        public void setSubject​(java.lang.String subject)
        タイトルをセットします。
        パラメータ:
        subject - タイトル
      • setFilename

        public void setFilename​(java.lang.String... fname)
        添付ファイル名配列をセットします。
        パラメータ:
        fname - 添付ファイル名配列(可変長引数)
      • setMessage

        public void setMessage​(java.lang.String msg)
        メッセージ(本文)をセットします。
        パラメータ:
        msg - メッセージ(本文)
      • setDebug

        public void setDebug​(boolean debug)
        デバッグ情報の表示を行うかどうかをセットします。
        パラメータ:
        debug - 表示有無[true/false]
      • main

        public static void main​(java.lang.String[] args)
        コマンドから実行できる、テスト用の main メソッドです。 Usage: java org.opengion.fukurou.mail.MailTX <from> <to> <host> [<file> ....] で、複数の添付ファイルを送付することができます。
        パラメータ:
        args - コマンド引数配列
        変更履歴:
        6.3.6.0 (2015/08/16) System.arraycopy が使える箇所は、置き換えます。