2017-06-06 12 views
0

私が一緒に仕事を春とSendmailのを設定することはできません。春ブーツのSendmail

春側:

のpom.xml

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

application.propertiesは

spring.mail.protocol=smtp 
spring.mail.host=localhost 
spring.mail.port=25 
spring.mail.username= 
spring.mail.password= 
spring.mail.properties.mail.smtp.auth=false 
spring.mail.properties.mail.smtp.starttls.enable=false 

メールコードを送信

@Async 
@Override 
public void sendActivationEmail(String username, String activationToken) { 
    SimpleMailMessage message = new SimpleMailMessage(); 
    message.setTo(username); 
    message.setSubject(EmailUtils.EMAIL_ACTIVATION_SUBJECT); 
    message.setText(String.format(EmailUtils.EMAIL_ACTIVATION_BODY, activationToken)); 
    this.javaMailSender.send(message); 
} 

Linux側(Gmailのと正常に動作します):

の/ etc/mail /アクセス

Connect:localhost.localdomain   RELAY 
Connect:localhost      RELAY 
Connect:127.0.0.1      RELAY 

の/ etc/mail /ローカル・ホスト名

mydomain.com 

の/ etc/mail/virtusertable

[email protected] noreply 

(私が持っています私はすべてのエラーを取得しない)ユーザーとしてnoreply

を追加しました。ログには何もありません。送信された電子メールもありません。どのように設定すればよいですか?

答えて

0

デフォルトでは、特定のタイムアウト値はSpringブートでは無制限です。 提案in the documentationとして妥当な値にタイムアウト値を設定し、それがタイムアウトされているかどうかを試してみてください。

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-email.html

spring.mail.properties.mail.smtp.connecttimeout=5000 
spring.mail.properties.mail.smtp.timeout=3000 
spring.mail.properties.mail.smtp.writetimeout=5000 
は、アドレスからの設定:

message.setFrom(...);

+0

それはうまくいったが、私はGmailに戻った。 10倍 –