Apache Commons Email – 添付ファイル付きメールを送信するには


添付ファイル付きメールを送信するためには、MultiPartEmailクラスを使用します。

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

import net.tk_factory.example.AbstractExample;

import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.MultiPartEmail;
import org.apache.log4j.Logger;

/**
 * Apache Commons Emailを使用したサンプルプログラムです。<br/>
 * <br/>
 * <b>内容</b>
 * <ol type="1">
 * <li>添付ファイル付きメールを送信します。</li>
 * </ol>
 * @author Takafumi Kondo (TK Factory)
 * @see org.apache.commons.mail.MultiPartEmail
 */
public class ExampleMultiPartEmailSend extends AbstractExample
{
    /** クラス名 */
    private static final String CLASS_NAME =
            ExampleMultiPartEmailSend.class.getSimpleName();

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

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

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

        try
        {
            MultiPartEmail email = new MultiPartEmail();

            //メールサーバを設定する
            email.setHostName("mail.myserver.com");

            //送信先メールアドレスを設定する
            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");

            //ファイルを添付する
            EmailAttachment attachment = new EmailAttachment();
            attachment.setPath("C:/Users/Public/Pictures/Sample Pictures/Oryx Antelope.jpg");
            attachment.setDisposition(EmailAttachment.ATTACHMENT);
            attachment.setDescription("Picture of Oryx Antelope");
            attachment.setName("Oryx Antelope");
            email.attach(attachment);

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

関連記事

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

  1. トラックバック 0

return top