问 我可以从哪里找到 POP 的支持?
答在 JavaMail 及以上版本中包括了 POP 提供程序POP 提供程序也可从多个第三方提供商获得请浏览我们的 第三方产品清单获取进一步信息
问 我想在 POP 服务器上删除消息我在这些消息上设置了 DELETED 标志然后调用 expunge() 方法但我得到了MethodNotSupportedException当使用 Sun 的 POP 提供程序时我如何删除消息?
答POP 提供程序不支持 expunge() 方法不过可以关闭 expunge 标志设为 true 的文件夹也就是调用 folderclose(true)
问 在从 Sun POP 提供程序获得的消息中我如何可以检索 POP UIDL?
答对于 POP 提供程序这是可能的参见 comsunmailpop 包文档获取进一步信息
问 对于 POP我如何知道哪里消息是新的?
答POP 协议不提供任何永久标志的支持因此 RECENT 标志是没有用的comsunmailpop 包文档讨论了几个策略它们可用于处理这一问题
问 当使用 POP 时为什么 hasNewMessages() 总是返回 false?
答POP 协议没有提供办法来决定文件夹是否有新消息
问 我创建了 MessageCountListener(如 monitor 程序中所展示的)但在我的 POP INBOX(收件箱)中我从未得到通知
答当 INBOX 打开时POP 协议不允许客户端查看传送到 INBOX 的新消息应用程序必须关闭 INBOX然后重新打开它 才可以查看新消息对于 POP使用 MessageCountListener 接口你从不会得到新邮件的通知参见 comsunmailpop 包文档(在 JavaMail 下载包的 docs/sundocs 目录)获取进一步信息
问 当使用 POP 时为什么 getReceivedDate() 返回 null?
答POP 协议不提供有关何时接收消息的信息通过查看一些消息标题比如 Received 标题可能可以猜到接收日期但这非常不可靠
问 当使用 POP 时我得到了有关 SocketFetcher 类的抱怨
答很有可能在 CLASSPATH 中有多个版本的 popjar 或 mailjar检查 CLASSPATH 的设置如果你正在使用 JDK 或更新版本检查 JDK 中的 jre/lib/ext 目录确保你只有 JavaMail mailjar 可用并且没有 popjar只有对于较老版本的 JavaMailpopjar 才是必要的
问 当使用 POP 时我得到了有关 contentStream 字段的抱怨
答错误通常像下面这样
javalangNoSuchFieldError: contentStream at
comsunmailpopPOPMessagegetContentStream(POPMessagejava:)
像 上面 一样使用混合版本的 POP 提供程序和 mailjar在包括 POP 提供程序的较新版本 mailjar 之前你可能在 CLASSPATH中有了较老版本
问 除了 POP 服务器上的 INBOX(收件箱)外您如何访问或创建文件夹?
答不能POP 服务器只支持每个用户一个邮箱大多数使用 POP 的邮件阅读者也维护着本地消息存储他们可以将传入的消息(来自 POP INBOX)复制到存储中并允许你将消息写到其他文件夹参见 本项目获取有关本地存储提供程序的进一步消息