// [SendHTMLSample.java]
// HTMLメッセージの送信を行うサンプルプログラム
import java.io.*;
import javax.mail.MessagingException;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeMessage;
import javax.activation.DataHandler;
import com.sk_jp.mail.SimpleSender;

public class SendHTMLSample {
    public static void main(String[] args) throws Exception {
        String host = args[0];
        String to   = args[1];
        String from = args[2];
        String subject = "テストメッセージです";

        SimpleSender sender = new SimpleSender();

        MimeMessage msg = sender.createMessage();
        SimpleSender.setHeaders(msg, to, from);
        msg.setSubject(subject, "ISO-2022-JP");

        msg.setContent(createHTMLPart());
        msg.saveChanges();

        sender.connect(host);
        sender.send(msg);
        sender.disconnect();
    }

    public static MimeMultipart createHTMLPart() throws MessagingException {
        String text = "これはテキストのパートです。";
        String html =
                "<html><body>" +
                "これは<em>HTML</em>のパートです。" +
                "</body></html>";

        // 一つ目のボディパート(text/plain)の構築
        MimeBodyPart textPart = new MimeBodyPart();
        textPart.setText(text, "ISO-2022-JP");

        // 二つ目のボディパート(text/html)の構築
        MimeBodyPart htmlPart = new MimeBodyPart();
        htmlPart.setContent(html, "text/html; charset=ISO-2022-JP");

        MimeMultipart mp = new MimeMultipart("alternative");
        mp.addBodyPart(textPart);
        mp.addBodyPart(htmlPart);

        return mp;
    }
}

