我正在使用带有 IMAP 协议(protocol)的 java 邮件 API 连接 Office 365 邮箱。
我们有连续的消息流到邮箱并通过 java 邮件 API 读取这些消息。阅读消息后,这些消息将被移动到其他文件夹或删除。成功移动/删除一批后,我正在收件箱文件夹上进行删除。
上述功能在大约 72 小时内运行良好,然后 EXPUNGE 命令不断失败。以下是观察到的异常
javax.mail.MessagingException: A447 NO EXPUNGE failed.; nested exception is: com.sun.mail.iap.CommandFailedException: A447 NO EXPUNGE failed. at com.sun.mail.imap.IMAPFolder.expunge(IMAPFolder.java:2190) at com.sun.mail.imap.IMAPFolder.expunge(IMAPFolder.java:2151) at com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.expungeConnectionInbox(IncidentsMailboxReader.java:423) at com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.updateCompletedConnection(IncidentsMailboxReader.java:311) at com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.checkAndUpdateConnectionInstances(IncidentsMailboxReader.java:285) at com.eiq.socvueportal.securitymonitoring.incidents.feeder.mail.IncidentsMailboxReader.getUnreadIncidentMails(IncidentsMailboxReader.java:76) at com.eiq.socvueportal.securitymonitoring.incidents.feeder.worker.IncidentMailsProcessor.findAndProcessUnreadMails(IncidentMailsProcessor.java:200) at com.eiq.socvueportal.securitymonitoring.incidents.feeder.worker.IncidentMailsProcessor.run(IncidentMailsProcessor.java:85) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: com.sun.mail.iap.CommandFailedException: A447 NO EXPUNGE failed. at 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) at com.sun.mail.imap.IMAPFolder.expunge(IMAPFolder.java:2183) ... 10 more
如何避免这种情况?在什么情况下可以观察到这种情况?
最佳答案
服务器未能通过删除请求。请与 Microsoft 联系以了解服务器出现故障的原因。作为一种解决方法,您可以关闭文件夹并重新打开它;关闭文件夹时将完成删除。
关于api - Office 365 邮件收件箱文件夹 EXPUNGE 使用 java 邮件 API 使用 IMAP 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45503383/