1

我正在尝试通过 获取电子邮件列表Message msg[] = folder.getMessages();。之后,我得到了每条消息的详细信息,同时我得到javax.mail.MessagingException: Failed to load IMAP envelope了一些消息的异常。

这是产生错误的一条消息的协议跟踪 -

A7 FETCH 2 (ENVELOPE INTERNALDATE RFC822.SIZE)
* 2 FETCH (RFC822.SIZE 2567 INTERNALDATE "29-Apr-2011 13:49:01 +0000" ENVELOPE ("Fri, 29 Apr 2011 19:19:01 +0530" "I NEES YOUR ASSISANCE?????" (("Mr Leung Cheung" NIL "info" "milium.com.br")) (("Mr Leung Cheung" NIL "info" "milium.com.br")) ((NIL NIL "mr.leung_cheung" "live.hk")) () NIL NIL NIL "<20110429134718.70333732030A@mail2.milium.com.br>"))
A7 OK FETCH Completed

错误的堆栈跟踪是-

Failed to load IMAP envelope stacktrace: javax.mail.MessagingException: Failed to load IMAP envelope
    at com.sun.mail.imap.IMAPMessage.loadEnvelope(IMAPMessage.java:1276)
    at com.sun.mail.imap.IMAPMessage.getSentDate(IMAPMessage.java:377)
    at com.my.main.model.TestMail.showAllMails(TestMail.java:95)
    at com.my.main.model.TestMail.main(TestMail.java:45)

我正在使用 JavaMail-1.5。

如何解决此错误,是否有任何方法或设置来解决它并在不跳过该消息的情况下获取消息的详细信息?

谢谢,

尼拉姆夏尔马

4

1 回答 1

2

你的服务器坏了。请将此错误报告给服务器供应商。你用的是什么服务器?

在响应中,消息的“To”值必须符合规范中定义的以下语法:

env-to      = "(" 1*address ")" / nil
address     = "(" addr-name SP addr-adl SP addr-mailbox SP addr-host ")"

相反,服务器返回了“()”。如果没有 To 标头,它应该返回“NIL”。

您可以使用JavaMail FAQ中描述的技术来解决服务器错误。

于 2013-10-01T18:16:15.877 回答