Java邮件创建DSN(已发送状态通知)

时间:2011-08-19 09:48:13

标签: java javamail

我想创建DSN(已发送状态通知)并发送回发件人。我使用MimeMulitPartReport并添加3个身体部分。但是,它不起作用。在接收方,它不显示人类可读消息和DSN信息。我无法弄清楚,我的代码中有什么问题。

谢谢

1 个答案:

答案 0 :(得分:1)

我使用带有DSN扩展名http://www.oracle.com/technetwork/java/javamail/index-141777.html的JavaMail 1.4.5:

private MimeMessage dsnEmail() throws MessagingException {
    MimeMessage msg = new MimeMessage(mailSession);
    MultipartReport multipart = new MultipartReport(
            HUMAN_READABLE_MSG,
            new DeliveryStatus(),
            originalEmail
    );
    msg.setContent(multipart);
    msg.setSubject("Delivery Status Notification (failure)");
    msg.setRecipient(Message.RecipientType.TO, originalEmail.getSender());
    return msg;
}

使用此maven导入:

<dependency>
    <groupId>com.sun.mail</groupId>
    <artifactId>dsn</artifactId>
    <version>1.4.5</version>
</dependency>

我希望它有所帮助