2017-02-23 11 views
1

電子メールサービスit.ozimovライブラリを実装しました。すべてがインポートされたら、sendメソッドに問題があります。私はそれをどのようにインポートすべきか分かりません。なぜなら今はサービスがそれを見ることができないからです。it.ozimovによる電子メールサービスは送信方法を見ることができません

ここで、それはここでは、サービスコードもちろん

@Autowired 
public EmailService emailService; 

public void sendEmailWithoutTemplating() throws UnsupportedEncodingException { 
    final Email email = DefaultEmail.builder() 
      .from(new InternetAddress("[email protected]", "Marco Tullio Cicerone ")) 
      .to(Lists.newArrayList(new InternetAddress("[email protected]", "Pomponius Attĭcus"))) 
      .subject("Laelius de amicitia") 
      .body("Firmamentum autem stabilitatis constantiaeque eius, quam in amicitia quaerimus, fides est.") 
      .encoding(String.valueOf(Charset.forName("UTF-8"))).build(); 

    emailService.send(email); 
} 

である私は

<dependency> 
     <groupId>it.ozimov</groupId> 
     <artifactId>spring-boot-email-core</artifactId> 
     <version>0.4.2</version> 
    </dependency> 
    <dependency> 
     <groupId>it.ozimov</groupId> 
     <artifactId>spring-boot-freemarker-email</artifactId> 
     <version>0.4.2</version> 
    </dependency> 

を添付して、依存関係である私は、プロパティのコードの下に追加:

spring.mail.host=smtp.gmail.com 
spring.mail.port=587 
[email protected] 
spring.mail.password=V3ry_Str0ng_Password 
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.scheduler.persistence.enabled=false 
spring.mail.scheduler.persistence.redis.embedded=false 
spring.mail.scheduler.persistence.redis.enabled=false 

答えて

1

まず、更新依存関係:

<dependency> 
    <groupId>it.ozimov</groupId> 
    <artifactId>spring-boot-email-core</artifactId> 
    <version>0.5.0</version> 
</dependency> 
<dependency> 
    <groupId>it.ozimov</groupId> 
    <artifactId>spring-boot-freemarker-email</artifactId> 
    <version>0.5.0</version> 
</dependency> 

その後は、アプリケーションのプロパティを設定します。

spring.mail.host: smtp.gmail.com 
spring.mail.port: 587 
spring.mail.username: [email protected] 
spring.mail.password: Th3MuleWh0 
spring.mail.properties.mail.smtp.auth: true 
spring.mail.properties.mail.smtp.starttls.enable: true 
spring.mail.properties.mail.smtp.starttls.required: true 

最後にテストサービスを作成

package com.test; 

import com.google.common.collect.Lists; 
import it.ozimov.springboot.mail.model.Email; 
import it.ozimov.springboot.mail.model.defaultimpl.DefaultEmail; 
import it.ozimov.springboot.mail.service.EmailService; 
import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.stereotype.Service; 

import javax.mail.internet.InternetAddress; 
import java.io.UnsupportedEncodingException; 

import static com.google.common.collect.Lists.newArrayList; 

@Service 
public class TestService { 

    @Autowired 
    private EmailService emailService; 

    public void sendEmail() throws UnsupportedEncodingException { 
     final Email email = DefaultEmail.builder() 
       .from(new InternetAddress("[email protected]", 
         "Hari Seldon")) 
       .to(newArrayList(
         new InternetAddress("[email protected]", 
         "Cleon I"))) 
       .subject("You shall die! It's not me, it's Psychohistory") 
       .body("Hello Planet!") 
       .encoding("UTF-8").build(); 

     emailService.send(email); 
    } 

} 

は、インポートされたパッケージへの極度の注意を払ってください。

は最後に、あなたはあなたがthis articleで詳細を見つけることができます注釈

@EnableEmailTools 

を使用して、あなたのメインアプリで拡張機能を有効にする必要があります。

関連する問題