Office 365邮件收​​件箱文件夹EXPUNGE使用java邮件API与IMAP失败

时间:2017-08-04 09:40:37

标签: api office365 javamail imap

我使用java邮件API与IMAP协议连接Office 365邮箱。

我们有连续的邮件流到邮箱并通过java邮件API读取它们。读取邮件后,这些邮件将被移动到其他文件夹或删除。成功移动/删除批处理后,我正在对INBOX文件夹进行删除。

上述功能在72小时内表现良好,然后EXPUNGE命令不断失败。以下是观察到的例外情况

  

javax.mail.MessagingException:A447没有EXPUNGE失败。嵌套   例外是:com.sun.mail.iap.CommandFailedException:A447 NO   EXPUNGE失败了。在   com.sun.mail.imap.IMAPFolder.expunge(IMAPFolder.java:2190)at at   com.sun.mail.imap.IMAPFolder.expunge(IMAPFolder.java:2151)at at   com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.expungeConnectionInbox(IncidentsMailboxReader.java:423)     在   com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.updateCompletedConnection(IncidentsMailboxReader.java:311)     在   com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.checkAndUpdateConnectionInstances(IncidentsMailboxReader.java:285)     在   com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.getUnreadIncidentMails(IncidentsMailboxReader.java:76)     在   com.eiq.socvueportal.securitymonitoring.incidents.feeder.worker.IncidentMailsProcessor.findAndProcessUnreadMails(IncidentMailsProcessor.java:200)     在   com.eiq.socvueportal.securitymonitoring.incidents.feeder.worker.IncidentMailsProcessor.run(IncidentMailsProcessor.java:85)     在   java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)     在   java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)     在java.lang.Thread.run(Thread.java:745)引起:   com.sun.mail.iap.CommandFailedException:A447 NO EXPUNGE失败。在   com.sun.mail.iap.Protocol.handleResult(Protocol.java:399)at   com.sun.mail.iap.Protocol.simpleCommand(Protocol.java:425)at   com.sun.mail.imap.protocol.IMAPProtocol.expunge(IMAPProtocol.java:1479)     在com.sun.mail.imap.IMAPFolder.expunge(IMAPFolder.java:2183)... 10   更

如何避免这种情况?在什么情况下可以观察到这一点?

1 个答案:

答案 0 :(得分:2)

服务器失败了删除请求。联系Microsoft以了解服务器失败的原因。作为解决方法,您可以关闭该文件夹并重新打开它;关闭文件夹时将完成删除。