Android 发送邮件时遭遇 : no object DCH for MIME type multipart/mixed
发布日期:2021-09-27 14:12:36 浏览次数:6 分类:技术文章

本文共 1570 字,大约阅读时间需要 5 分钟。

I create a message:msg = new MimeMessage(session);MimeBodyPart mbp1 = new MimeBodyPart();mbp1.attachFile(f1);MimeBodyPart mbp2 = new MimeBodyPart();mbp2.attachFile(f2);MimeBodyPart mbp3 = new MimeBodyPart();mbp3.attachFile(f3);Multipart mp = new MimeMultipart();mp.addBodyPart(mbp1);mp.addBodyPart(mbp2);mp.addBodyPart(mbp3);msg.setContent(mp);...then send it:SMTPTransport transport = (SMTPTransport)session.getTransport();transport.connect();transport.sendMessage(msg, new Address[] {
new InternetAddress(...)});and get MessagingException: IOException while sending messageUnsupportedDataTypeException: no object DCH for MIME type multipart/mixed: There is something wrong with MailCap, javamail can not find a handler for such multipart/mixed part. I solved this issue by adding this (before mail creation and delivery) MailcapCommandMap mc = (MailcapCommandMap) CommandMap.getDefaultCommandMap(); mc.addMailcap("text/html;; x-java-content-handler=com.sun.mail.handlers.text_html"); mc.addMailcap("text/xml;; x-java-content-handler=com.sun.mail.handlers.text_xml"); mc.addMailcap("text/plain;; x-java-content-handler=com.sun.mail.handlers.text_plain"); mc.addMailcap("multipart/*;; x-java-content-handler=com.sun.mail.handlers.multipart_mixed"); mc.addMailcap("message/rfc822;; x-java-content-handler=com.sun.mail.handlers.message_rfc822"); CommandMap.setDefaultCommandMap(mc); Note that JAF comes bundled in Java >= 6

 

转载于:https://www.cnblogs.com/MMLoveMeMM/articles/4090705.html

转载地址:https://blog.csdn.net/FLY_THINK2012/article/details/101840935 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:VMware 虚拟机中添加新硬盘的方法
下一篇:自定义ViewGroup 实现拖动跟快速滚动的效果

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月12日 15时34分36秒