您应该打电话
imapMailReceiver.afterPropertiesSet(),这会切换
this.folderOpenMode =Folder.READ_WRITE;。就您而言,它看起来就在这里:
imapMailReceiver.setJavaMailAuthenticator(new Authenticator() {...});imapMailReceiver.afterPropertiesSet();实际上,几乎所有的Spring Integration组件都应配置为Spring
Bean,并且Container将注意它们的初始化。新的4.0版本为JavaConfig提供了足够的选项:https ://spring.io/blog/2014/04/30/spring-
integration-4-0-released 。
对我来说,目前尚不清楚为什么默认情况下是这样,
Folder.READ_ONLY并且对此没有任何影响。
随意提出JIRA问题:https :
//jira.spring.io/browse/INT
在这种情况下,我应该使用ImapIdleChannelAdapter,而在使用Session进行存储和连接到邮箱时。
实际上,这取决于您的邮件提供商。Spring
Integration提供了两个组件:
Pop3MailReceiver和
ImapMailReceiver。当然Imap更好,因为它不将消息提取到本地目录并支持
Listener。Pop3您应该定期ping通。


![ImapMailReceiver不在只读文件夹上尝试任何存储操作(失败)[已限制]; ImapMailReceiver不在只读文件夹上尝试任何存储操作(失败)[已限制];](http://www.mshxw.com/aiimages/31/516157.png)
