命令失败异常 "some FETCH responses could not be transmitted due to errors"

CommandFailedException "some FETCH responses could not be transmitted due to errors"

我正在使用 Javamail 1.5.6 来侦听来自特定邮件帐户的传入 IMAP 邮件。 有些邮件总是来自同一个发件人,当我尝试读取它们的大小时显示错误,请查看以下日志:

"11:48:28.876 E [JavaMail-EventQueue] it.cbt.mail.impl.IMAPFolderSynchronizer:65 - Error notifying message addition
"javax.mail.MessagingException: A588 NO some FETCH responses could not be transmitted due to errors
        at com.sun.mail.imap.IMAPMessage.loadEnvelope(IMAPMessage.java:1450)
        at com.sun.mail.imap.IMAPMessage.getSize(IMAPMessage.java:491)
        at it.cbt.mail.impl.IMAPFolderSynchronizer.messagesAdded(IMAPFolderSynchronizer.java:54)
        at javax.mail.event.MessageCountEvent.dispatch(MessageCountEvent.java:153)
        at javax.mail.EventQueue.run(EventQueue.java:168)
        at java.lang.Thread.run(Thread.java:748)
Caused by: com.sun.mail.iap.CommandFailedException: A588 NO some FETCH responses could not be transmitted due to errors
        at com.sun.mail.iap.Protocol.handleResult(Protocol.java:396)
        at com.sun.mail.imap.IMAPMessage.loadEnvelope(IMAPMessage.java:1445)
        ... 5 common frames omitted
11:48:28.876 D [JavaMail-EventQueue] my.package.IncomingMailServiceImpl:182 - Notice "cannot map message section for parsing"

我以为是邮件服务器错误,但是如果我登录到邮件网络客户端,我可以正确地看到那些在使用 Javamail 时失败的邮件,所以我对真正的问题原因感到困惑。 你遇到过这个问题吗?

提前致谢,再见

这几乎可以肯定是邮件服务器中的错误。 JavaMail 常见问题解答告诉您如何 work around IMAP server bugs.