Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我们可以使用Java邮件API将Gmail消息附加到Yahoo吗_Java_Jakarta Mail_Imap - Fatal编程技术网

我们可以使用Java邮件API将Gmail消息附加到Yahoo吗

我们可以使用Java邮件API将Gmail消息附加到Yahoo吗,java,jakarta-mail,imap,Java,Jakarta Mail,Imap,我们想用JavaMail-1.5编写一个程序,可以将Gmail的消息附加到Yahoo帐户。Java邮件API可以实现这一点吗?我们正在尝试的是,我们已经在我们的系统中下载了Gmail邮件的eml,现在我们想将这些邮件附加到一个Yahoo帐户。在尝试这一点时,我们得到了这个错误- javax.mail.MessagingException: A4 NO [SERVERBUG] LIST Server error - Please try again later; nested except

我们想用JavaMail-1.5编写一个程序,可以将Gmail的消息附加到Yahoo帐户。Java邮件API可以实现这一点吗?我们正在尝试的是,我们已经在我们的系统中下载了Gmail邮件的eml,现在我们想将这些邮件附加到一个Yahoo帐户。在尝试这一点时,我们得到了这个错误-

 javax.mail.MessagingException: A4 NO [SERVERBUG] LIST Server error - Please try again later;
   nested exception is: com.sun.mail.iap.CommandFailedException: A4 NO [SERVERBUG] LIST Server error - Please try again later
    at com.sun.mail.iap.Protocol.handleResult(Protocol.java:351)
    at com.sun.mail.imap.protocol.IMAPProtocol.doList(IMAPProtocol.java:1100)
    at com.sun.mail.imap.protocol.IMAPProtocol.list(IMAPProtocol.java:1046)
    at com.sun.mail.imap.IMAPFolder$1.doCommand(IMAPFolder.java:518)
    at com.sun.mail.imap.IMAPFolder.doProtocolCommand(IMAPFolder.java:2991)
    at com.sun.mail.imap.IMAPFolder.doCommand(IMAPFolder.java:2931)
    ... 8 more
有时,此过程会产生类似的错误,如下所列-

A33 NO Invalid "flag-list" : Contains unsupported flag or other invalid item.
A18 BAD [CLIENTBUG] APPEND Command arguments invalid
A19 BAD [CLIENTBUG] APPEND Command arguments invalid
A21 NO [SERVERBUG] LIST Server error - Please try again later
A12 BAD [CLIENTBUG] APPEND Command arguments invalid
.............
............
这是否可以使用Java邮件API将Gmail eml消息附加到Yahoo帐户

谢谢


尼拉姆·夏尔马(Neelam Sharma)

这确实是一个关于雅虎邮件服务器支持什么的问题。正如您所发现的,Yahoo邮件服务器有时会由于服务器错误而导致操作失败。可能需要重试几次才能使操作正常工作

追加失败似乎是由于服务器限制了在追加消息时可以设置的标志。调试输出将显示它试图设置的标志。在附加消息之前,可能需要清除消息中的这些标志


请参阅,尤其是该程序中的dontPreserveFlags选项。

可能会发布相关代码帮助。无效的标志列表,但我们不确定您在其中设置了什么值谢谢,我的问题通过在附加之前清除邮件中的标志得到解决-通过从邮件中删除标志列表解决了我在其他帐户中附加邮件的问题,但现在我发现了错误-1。A319错误的[CLIENTBUG]在最后一个预期参数2之后找到其他参数。A172无[SERVERBUG]删除服务器错误-请稍后重试,如何消除这些错误?IMAP APPEND命令允许一组可选标志和一个可选日期。听起来Yahoo Mail可能对日期不满意,但如果没有看到实际的协议交换,很难判断。JavaMail从Message.getReceivedDate获取日期,如果该日期为null,则从Message.getSentDate获取。如果两者都返回null,则不发送日期。您可以创建自己的MimeMessage子类,该子类始终返回null,然后使用复制构造函数将消息复制到新的子类。对于-A319 BAD[CLIENTBUG],在上一个预期参数之后找到的其他参数-我调试了消息,它至少有一个日期消息。getSentDate但message.getReceivedDate为null。这个错误并不总是发生,有时我会在目标端收到附加消息。我怎样才能解决它??这是一条消息的协议跟踪-如果您总是发送日期,并且只有在出现此错误消息时才会失败,那么您需要询问Yahoo为什么它有时才会失败。正如我上面所描述的,除了不发送日期的解决方法之外,我没有更好的主意给你。