1
有没有一种方法可以使用java在电子邮件正文中发送现有HTML文件?如何将现有HTML文件的内容按原样发送到电子邮件正文中使用java
背景 - 对于我的黄瓜硒自动化测试框架,我使用Cucumber HTML Report生成执行结果。报告生成为每个运行文件夹中的html文件。该报告包含表格执行摘要。我希望将此报告作为电子邮件正文的一部分发送(而不是作为附件)。
我到目前为止所做的 - 我尝试使用java邮件API。我能够使用谷歌提供的典型java邮件api代码发送电子邮件正文中的html。但问题是收到的电子邮件失去了格式。桌子也失去了边界和许多其他风格。我也试过使用詹金斯,但没有运气不能成功。
代码片段:
StringWriter writer = new StringWriter();
IOUtils.copy(new FileInputStream(new File("D:\\Research\\CucumberHTML\\target\\cucumber-html-reports\\feature-overview.html")), writer, "ISO-8859-1");
// creates message part
MimeBodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setContent(writer.toString(), "text/html");
// creates multi-part
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
// sets the multi-part as e-mail's content
msg.setContent(multipart); // sends the e-mail
Transport.send(msg);
Actualreport HowReportLooksWhenSentViaEmail
任何一个可以请帮助或建议在这方面更好的解决办法?
谢谢。我也可以发送电子邮件给詹金斯。但问题是报告产生了这样的结构。父级报告文件夹>子文件夹 - CSS,嵌入,字体,图像,js,然后报告html文件。现在,如果我发送这个HTML文件作为电子邮件;文件被发送,但它失去了所有的格式可能格式来自像CSS,JS,字体的文件夹。有没有一种方式,HTML文件是按原样阅读而不会丢失格式并发送?我也可以发送带有附件报告的电子邮件,但我希望报告电子邮件正文中的内容,而不是作为附件。任何进一步帮助高度赞赏 – Mukund