Apache Commons Email – POP before SMTPでユーザ認証を行うには


POP before SMTPでユーザ認証を行い、メールサーバに接続するためには、
setPopBeforeSmtpメソッドを使用します。

package net.tk_factory.example.apache.commons.email;

import net.tk_factory.example.AbstractExample;

import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;
import org.apache.log4j.Logger;

/**
 * Apache Commons Emailを使用したサンプルプログラムです。<br/>
 * <br/>
 * <b>内容</b>
 * <ol type="1">
 * <li>POP before SMTPでユーザ認証を行い、メールを送信します。</li>
 * </ol>
 * @author Takafumi Kondo (TK Factory)
 * @see org.apache.commons.mail.Email#setPopBeforeSmtp(boolean, String, String, String)
 */
public class ExamplePopBeforeSmtp extends AbstractExample
{
    /** クラス名 */
    private static final String CLASS_NAME =
            ExamplePopBeforeSmtp.class.getSimpleName();

    /** ロガー */
    private static final Logger LOGGER =
            Logger.getLogger(ExamplePopBeforeSmtp.class.getName());

    /**
     * ExamplePopBeforeSmtpオブジェクトを構築すると、
     * UnsupportedOperationExceptionがスローされます。<br/>
     */
    protected ExamplePopBeforeSmtp()
    {
        throw new UnsupportedOperationException();
    }

    /**
     * mainメソッドです。<br/>
     *
     * @param args 引数
     */
    public static void main(String[] args)
    {
        LOGGER.info("[START]" + CLASS_NAME);

        try
        {
            SimpleEmail email = new SimpleEmail();

            //メールサーバを設定する
            email.setPopBeforeSmtp(true,
                    "mail.myserver.com",
                    "user",
                    "password");

            //送信先メールアドレスを設定する
            email.addTo("to@mail.myserver.com");

            //送信先メールアドレス(CC)を設定する
            email.addCc("cc@mail.myserver.com");

            //送信先メールアドレス(BCC)を設定する
            email.addBcc("bcc@mail.myserver.com");

            //送信元メールアドレスを設定する
            email.setFrom("from@mail.myserver.com");

            //返信先メールアドレスを設定する
            email.addReplyTo("reply@mail.myserver.com");

            //メールのタイトルを設定する
            email.setSubject("Title");

            //メールの本文を設定する
            email.setMsg("Message");

            //メールを送信する
            email.send();
        }
        catch (EmailException ex)
        {
            LOGGER.error(getStackTrace(ex));
        }
        finally
        {
            LOGGER.info("[E N D]" + CLASS_NAME);
        }
    }
}

関連記事

  1. ソースを見直し、一部、修正しました。

  1. トラックバック 0

return top