【发布时间】:2016-06-17 22:02:51
【问题描述】:
如何使用 IMAP 协议和 JavaMail 读取邮件收件箱,然后使用本地磁盘存储邮件。没有 mstor 的文档。 我尝试这种方式,但似乎 MStorStore 只是读取本地 mbox,而不是根据在 connect() 函数中作为参数传递的外部服务器创建和更新它。我收到错误:文件夹 [收件箱] 不存在。
Session lSession = Session.getDefaultInstance(props);
MStorStore lStore = new MStorStore(lSession , new URLName("mstor:c:/some_path/" + _mailModel.account.login));
lStore.connect(_mailModel.account.imap, _mailModel.account.login, _mailModel.account.password);
Folder lInbox = lStore.getDefaultFolder().getFolder("Inbox");
问题是如何从 javax.mail.Store 创建 MBox,我可以使用 Mstor 读取和更新。
【问题讨论】:
-
快速浏览后MStorFolder 可能就是您要找的东西。
-
不,MStorFolder 扩展了 java.mail.Folder,据我所知,它只是从已经存在的文件夹中读取
-
MStorFolder.create 听起来像创建一个文件夹。如果存在异常
new MessagingException("Folder already exists")将被抛出。听起来对我来说还不错。 -
是的,但问题是 MStorStore,它在构造函数中作为参数传递给 MStorFolder,使用 mstor 协议(本地存储)或 imaps,我无法从服务器下载 mbox 并保持同步
标签: java jakarta-mail mbox mstor