2012-08-17 674 views
1

StackOverflow给了我很多帮助,所以想发布它以节省其他人花费在调试中的时间:com.sun.mail.util.DecodingException:BASE64Decoder:编码流中的错误检索来自Yahoo的邮件

我正在使用Java应用程序通过IMAP/SSL检索邮件。好几个月。现在,来自雅虎的特定消息存在问题。该消息是multipart/alternative与base64编码的文本/普通部分和base64编码的文本/ html部分。

检索失败:

IOException: com.sun.mail.util.DecodingException: BASE64Decoder: Error in encoded stream: needed 4 valid base64 characters but only got 3 before EOF, the 10 most recent characters were: "IPONREPLY>" :[com.sun.mail.util.BASE64DecoderStream.decode(BASE64DecoderStream.java:256), com.sun.mail.util.BASE64DecoderStream.read(BASE64DecoderStream.java:110)... 

本身看起来正常使用雅虎的网页邮件客户端的内容。看着什么是我在HTML部分应用程序检索,我看到base64编码的文本/ HTML部分的结尾:

[...] 
YWdlcy9iank1LzQ5NjViOGUyLTQxYjEtNGFhNi1iOGFhLTEzNGQwYjYxMWM5My5naWZ4IiAvPg0K 
DQo8L2JvZHk+PC9odG1sPg== 
<XHTML-STRIPONREPLY>                    


       </XHTML-STRIPONREPLY> 

这是雅虎最近开始增加的消息文本。它适用于未编码或使用带引号的可打印编码的文本,但打破了base64编码的部分。

我向雅虎提交了一份报告,希望他们能尽快解决。

回答