Gam*_*mby 5 gmail jakarta-mail
我正在使用 javamail 1.5.5,我想监听 GMail 邮箱中的新邮件。
我有一个 MessageCountListener 的实现,在它的 messagesAdded 方法上,最后我这样做:
try {
// process new messages
idleManager.watch(ifo); // keep watching for new messages
} catch (MessagingException mex) {
logger.error(".....", mex);
}
Run Code Online (Sandbox Code Playgroud)
我不确定是否理解,因为我遇到了异常......
我相信我正在做这里所说的https://javamail.java.net/nonav/docs/api/com/sun/mail/imap/IdleManager.html#watch-javax.mail.Folder-
遵循一些邮件调试日志,考虑到在该异常之后,不再有新消息到达侦听器。
DEBUG IMAP: IdleManager selected 1 channels
DEBUG IMAP: IdleManager selected folder: imaps://xxxxxxxxxx@imap.gmail.com:993/INBOX
* 1026 FETCH (UID 4284 FLAGS (\Answered \Seen))
DEBUG IMAP: IdleManager continue watching folder imaps://xxxxxxx@imap.gmail.com:993/INBOX
DEBUG IMAP: IdleManager adding imaps://xxxxxxxxx@imap.gmail.com:993/INBOX to selector
DEBUG IMAP: IdleManager waiting...
DEBUG IMAP: IdleManager selected 1 channels
DEBUG IMAP: IdleManager selected folder: imaps://xxxxxxxxxxx@imap.gmail.com:993/INBOX
DEBUG IMAP: handleIdle: set to RUNNING
DEBUG IMAP: IdleManager got exception for folder: imaps://prismatest@imap.gmail.com:993/INBOX, THROW:
javax.mail.FolderClosedException: * BYE JavaMail Exception: java.io.IOException: Connection dropped by server?
at com.sun.mail.imap.IMAPFolder.handleIdle(IMAPFolder.java:3199)
at com.sun.mail.imap.IdleManager.processKeys(IdleManager.java:370)
at com.sun.mail.imap.IdleManager.select(IdleManager.java:281)
at com.sun.mail.imap.IdleManager.access$200(IdleManager.java:137)
at com.sun.mail.imap.IdleManager$1.run(IdleManager.java:164)
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)
DEBUG IMAP: IdleManager waiting...
Run Code Online (Sandbox Code Playgroud)
谢谢再见
| 归档时间: |
|
| 查看次数: |
9011 次 |
| 最近记录: |