我正在尝试使用Spring的JavaMailSenderImpl
在Spring(版本3.0.5. RELEASE)网络应用程序中发送一封html电子邮件。
电子邮件已发送,但不正确:
我尝试了以下方法,但没有成功:
MimeMessage mimeMessage = mailSender.createMimeMessage();
MimeMessageHelper message = new MimeMessageHelper(mimeMessage, false, "utf-8");
message.setTo(to);
message.setFrom(from);
message.setReplyTo(from);
message.setSubject(StringUtils.trim(subject));
message.setSentDate(new Date());
mimeMessage.setContent(StringUtils.trim(messageBody), "text/html");
mailSenderImpl.send(mimeMessage);
(mailSender是从应用程序上下文检索到的Spring的JavaMailSenderImpl;
到
,
来自
,
主题
,
消息体
是
字符串
对象)。
为了设置内容,我还尝试了:
message.setText(messageBody, true);
message.setText(messageBodyPlain, messageBodyText);
我还尝试使用多部分消息(将
MimeMessageHelper
的第二个参数设置为true
)并使用MimeMessagePreator
。
查看传递的消息,它们不包含
Content-Type:
或主题
标头。
在我的测试中,我使用了我公司的smtp服务器和Gmail的smtp服务器。
更新:问题已解决
原来我的问题是另一个问题的重复:一堆Maven依赖项包括
geronimo-javamail_1。4_spec
,这就是格式错误的电子邮件的原因。我只需要排除这个jar,像这样编辑pom.xml:
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-api</artifactId>
<version>1.2.8</version>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-javamail_1.4_spec</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-dom</artifactId>
<version>1.2.8</version>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-javamail_1.4_spec</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-impl</artifactId>
<version>1.2.8</version>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-javamail_1.4_spec</artifactId>
</exclusion>
</exclusions>
</dependency>
尝试创建mimessagehelper,将multipart标志设置为true;
MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "utf-8");
我正在尝试在Spring Boot中使用JavaMailSender发送电子邮件。我尝试了几乎所有的方法,但仍然得到这个错误。请建议我该怎么做才能使我的代码正常工作?谢谢!!! 这是我发送电子邮件的代码。 application.properties文件 当我尝试运行代码时,遇到以下错误异常
问题内容: 我遇到了一个问题:直到今天,我使用包含以下内容的标头使用PHP发送HTML邮件 现在,我添加了添加附件的功能。为此,我不得不将此行更改为 现在,使用,邮件的其余部分(即普通文本)将显示为文本/纯文本。我怎么能知道附件有效并且邮件文本仍然是HTML? 问题答案: 要发送带有附件的电子邮件,我们需要使用multipart / mixed MIME类型,该类型指定混合类型将包含在电子邮件中。
问题内容: 在回答的问题表明,在电子邮件正文中添加html-markup可以解决问题。该解决方案正确吗? 但是,如果收件人的电子邮件服务器/客户端不支持HTML电子邮件怎么办? 例如,当使用Apache Commons email时,我将执行以下操作: 如果收件人电子邮件服务器/客户端不支持HTML,有什么方法可以告诉Gmail API退回哪些电子邮件? PS我对Java代码示例特别感兴趣。 谢谢
我已经在Gmail中的Check mail from other accounts(使用POP3)和Send mail as(使用TLS在587端口通过mail.mydomain.com安全连接发送邮件)下设置了我的cpanel电子邮件地址 看着Roundcube,我可以看到里面有收到的邮件,但没有发送的邮件——尽管Gmail是通过我的域服务器发送的。 有没有办法查看通过Gmail收发的邮件?
问题内容: 如何使用Shell脚本发送HTML电子邮件? 问题答案: 首先,您需要撰写邮件。最低要求由以下两个标头组成: …以及适当的邮件正文: 一旦有了它,就可以将适当的信息传递给mail命令: 这是一个过于简化的示例,因为您还需要注意字符集,编码,最大行长…但这基本上就是这个主意。 另外,您可以用Perl或PHP而不是普通的Shell编写脚本。 Shell脚本基本上是一个文本文件,带有Unix
本文向大家介绍Spring Boot中利用JavaMailSender发送邮件的方法示例(附源码),包括了Spring Boot中利用JavaMailSender发送邮件的方法示例(附源码)的使用技巧和注意事项,需要的朋友参考一下 快速入门 在Spring Boot的工程中的pom.xml中引入spring-boot-starter-mail依赖: 如其他自动化配置模块一样,在完成了依赖引入之后,