首页 > 解决方案 > Spring Mail 中不允许域文字问题

问题描述

我正在尝试使用Spring Boot / Spring Mail发送电子邮件:

我的配置如下:

Pom.xml:

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

特性 :

spring.mail.host=mail.XXX.com
spring.mail.username=XXX@XXX.com
#spring.mail.port=26
spring.mail.password=XXXXX
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.properties.mail.smtp.ssl.enable=true

邮件服务如下:

@Service
public class EmailServiceImpl implements EmailService {


    private  JavaMailSender sender;

    @Autowired
    public EmailServiceImpl(JavaMailSender sender){
        this.sender = sender;
    }



    public void processEmailRequest(EmailDetails emailDetails) throws Exception{
        MimeMessage message = sender.createMimeMessage();
        MimeMessageHelper helper = new MimeMessageHelper(message,true);
        helper.setTo(emailDetails.getEmailTo());
        helper.setText("text/html",emailDetails.getEmailBody());
        helper.setSubject(emailDetails.getEmailSubject());

        if(emailDetails.getEmailCC()!= null){
            helper.setCc(emailDetails.getEmailCC());
        }

       try {
           System.err.println(">>>>>>>>  Approaching Sender.");
           sender.send(message);
           //sender.se
        } catch (Exception e) {
           System.err.println("SMTP : UNKNOWN ERROR" + e);
        }

    }


}

此时我收到以下错误:

org.springframework.mail.MailSendException: Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 501 <pramod-j@[192.168.10.34]>: domain literals not allowed
;
  nested exception is:
        com.sun.mail.smtp.SMTPSenderFailedException: 501 <pramod-j@[192.168.10.34]>: domain literals not allowed
; message exceptions (1) are:
Failed message 1: com.sun.mail.smtp.SMTPSendFailedException: 501 <pramod-jazz@[192.168.101.4]>: domain literals not allowed

;

标签: javaspringspring-bootemailjakarta-mail

解决方案


请添加helper.setFrom("<from@address>")它对我有用。


推荐阅读