2016-12-08 9 views
5

मैं दो टेम्पलेट रिज़ॉल्यूशन को परिभाषित करने का एक तरीका ढूंढ रहा हूं जिसका उपयोग स्प्रिंग बूट ऐप में थाइमेलीफ मेल प्रोसेसिंग के लिए किया जा सकता है। मुझे इसकी आवश्यकता है क्योंकि मेरे पास एक HTML टेम्पलेट और टेक्स्ट टेम्पलेट है। ईमेल में समृद्ध टेक्स्ट और सादे पाठ सामग्री प्रदान करने के लिए दोनों आवश्यक हैं।वसंत बूट पर thymeleaf के लिए एकाधिक टेम्पलेट रिज़ॉल्यूशन

सभी कॉन्फ़िगरेशन application.properties या पर्यावरण गुणों के माध्यम से किए जाएंगे।

मैं केवल एक टेम्पलेट समाधानकर्ता परिभाषित करने के लिए प्रबंधित किया है:

spring.thymeleaf.check-template-location=true 
spring.thymeleaf.prefix=classpath:/mails/ 
spring.thymeleaf.excluded-view-names= 
spring.thymeleaf.view-names= 
spring.thymeleaf.suffix=.html 
spring.thymeleaf.mode=HTML5 
spring.thymeleaf.encoding=UTF-8 
spring.thymeleaf.content-type=text/html 
spring.thymeleaf.cache=true 

मैं अगर कोई मुझे एक संकेत दे सकते हैं या मुझे सही दिशा में एक समाधान के लिए खोज करने के लिए जहां दिखा सकता है खुशी होगी।

उत्तर

1

एक ही विषय था और इसे थाइमेलीफ साइट के लिए धन्यवाद। यात्रा http://www.thymeleaf.org/doc/articles/springmail.html

यहाँ भी विन्यास का एक नमूना है:

https://github.com/thymeleaf/thymeleafexamples-springmail/blob/3.0-master/src/main/java/thymeleafexamples/springmail/business/SpringMailConfig.java

मुख्य विधि है कि आप इस पर गौर करना चाहिए इस से एक है:

/* ******************************************************************** */ 
/* THYMELEAF-SPECIFIC ARTIFACTS FOR EMAIL        */ 
/* TemplateResolver(3) <- TemplateEngine        */ 
/* ******************************************************************** */ 

@Bean 
public TemplateEngine emailTemplateEngine() { 
    final SpringTemplateEngine templateEngine = new SpringTemplateEngine(); 
    // Resolver for TEXT emails 
    templateEngine.addTemplateResolver(textTemplateResolver()); 
    // Resolver for HTML emails (except the editable one) 
    templateEngine.addTemplateResolver(htmlTemplateResolver()); 
    // Resolver for HTML editable emails (which will be treated as a String) 
    templateEngine.addTemplateResolver(stringTemplateResolver()); 
    // Message source, internationalization specific to emails 
    templateEngine.setTemplateEngineMessageSource(emailMessageSource()); 
    return templateEngine; 
} 

यहाँ परिभाषित कर रहे हैं कई टेम्प्लेट रिसोल्वर।

कॉन भाग यह है कि यह जावा कोड है और इसे एप्लिकेशन.प्रोपर्टीज तरीके से संभाला नहीं जाता है। यदि आपको application.properties में उन्हें परिभाषित करने का कोई तरीका मिलता है ... एक टिप्पणी छोड़ दें।