JavaMail处理读取传入消息的接收

时间:2013-11-18 13:22:35

标签: java javamail

我正在使用JavaMail工作的邮件客户端,它工作正常。现在我希望能够处理传入消息的已读回执。如果传入的邮件头包含“Disposition-Notification-To”,我想处理它并发送回读取收据,就像thunderbird和其他邮件客户端处理它一样。我已经google了很多,并通过JavaMail API,但我只看到发送阅读回执启用的消息,而不是处理需要阅读回执的传入消息。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

以下是可能遇到同样问题的人的解决方案。我知道上面的回答重申了回到API,但没有提供解决方案或示例,因此不能接受它作为我的问题的答案。我是从Jruby这样做的,但它应该很容易将其转换为普通的Java:

 m = javax.mail.internet.MimeMessage.new(your_SMTP_obtained_session);
 m.setFrom(javax.mail.internet.InternetAddress.new(from_who));
 m.setSubject("Message Receipt (displayed) - #{original_message_subject}");
 m.addRecipient(javax.mail.internet.MimeMessage::RecipientType::TO, 
    javax.mail.internet.InternetAddress.new(destination_email_address));
 multireport = com.sun.mail.dsn.MultipartReport.new("Your text message to the" +
    "recipient i.e report content",com.sun.mail.dsn.DispositionNotification.new);
 m.setContent(multireport);

现在您已准备好发送完整的MimeMessage。