100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > mimemultipart java_最佳实践 – 发送javamail mime multipart电子邮件和gmail

mimemultipart java_最佳实践 – 发送javamail mime multipart电子邮件和gmail

时间:2020-08-16 05:45:26

相关推荐

mimemultipart java_最佳实践 – 发送javamail mime multipart电子邮件和gmail

我有一个Tomcat应用程序需要发送确认电子邮件等。我已经用Javamail(mail.jar)编写了电子邮件发送多部分文本/ HTML电子邮件。我基于Java EE示例的代码。我在本地服务器上使用SMTP MTA。

它的作品很棒在Outlook中,我看到了HTML版本。如果我将其拖动到Outlook垃圾邮件文件夹,我看到文本版本。所以我解释说,它的作品。

但是,如果我在Gmail中查看电子邮件,我只会看到文字版本。我知道HTML在那里(这是Outlook得到的)。但Gmail没有显示…我有很多来自Gmail中显示为HTML的系统的电子邮件。

任何人都可以指出说明我失踪的规格吗?有需要创建的特殊标题吗?

谢谢

代码看起来像这样:

Message message = new MimeMessage(session);

Multipart multiPart = new MimeMultipart("alternative");

try {

MimeBodyPart textPart = new MimeBodyPart();

textPart.setText(text, "utf-8");

MimeBodyPart htmlPart = new MimeBodyPart();

htmlPart.setContent(html, "text/html; charset=utf-8");

multiPart.addBodyPart(htmlPart);

multiPart.addBodyPart(textPart);

message.setContent(multiPart);

if(from != null){

message.setFrom(new InternetAddress(from));

}else

message.setFrom();

if(replyto != null)

message.setReplyTo(new InternetAddress[]{new InternetAddress(replyto)});

else

message.setReplyTo(new InternetAddress[]{new InternetAddress(from)});

InternetAddress[] toAddresses = { new InternetAddress(to) };

message.setRecipients(Message.RecipientType.TO, toAddresses);

message.setSubject(subject);

message.setSentDate(new Date());

Transport.send(message);

} catch (AddressException e) {

e.printStackTrace();

System.out.println("Error: "+e.getMessage());

} catch (MessagingException e) {

e.printStackTrace();

System.out.println("Error: "+e.getMessage());

} finally {

System.out.println("Email sent!");

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。