我正在尝试通读邮箱中的邮件,但是在将邮件内容解析为 MimeMessage 的过程中,某些特定邮件使进程挂起,它没有显示任何错误消息,日志显示程序在 MimeMessage.writeTo 步骤停止(OutputStream), 下面是实际代码
for (int n = message.length; i < n; i++)
{Log25.write("IMAPaccess", "getMessages", "start convert");
MimeMessage msg = (MimeMessage)message[i];
Log25.write("IMAPaccess", "getMessages", "A");
ByteArrayOutputStream bos = new ByteArrayOutputStream();
Log25.write("IMAPaccess", "getMessages", "B");
msg.writeTo(bos);
Log25.write("IMAPaccess", "getMessages", "C");
bos.close();
Log25.write("IMAPaccess", "getMessages", "start create bis");
SharedByteArrayInputStream bis = new SharedByteArrayInputStream(bos.toByteArray());
MimeMessage cmsg = new MimeMessage(session, bis);
bis.close();
....
下面是日志信息,它没有显示任何异常,但挂在“B”处,即“msg.writeTo(bos);”步骤中 在日志中
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages 36: [Ljavax.mail.internet.InternetAddress;@d522e24d null
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages 36: From address length 1
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages 36: From address INFORMATION <info@funds.com>
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages complete for loop j
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages start convert
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages A
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages B
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages C
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages start create bis
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages start cmsg to mimeMessage
Mon Sep 10 09:44:41 UTC 2018 IMAPaccess getMessages content type: text/html;^M
暮色呼如
相关分类