This repository was archived by the owner on Nov 20, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
Spring Mail
PINGUET Julien edited this page Feb 5, 2015
·
1 revision
Utilisation de Java Mail avec Spring.
<properties>
<spring.version>4.0.6.RELEASE</spring.version>
</properties>
<!-- ... -->
<dependencies>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.5.0-b01</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>
<dependencies>Pour Gmail :
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="smtp.gmail.com" />
<property name="port" value="587" />
<property name="username" value="" />
<property name="password" value="" />
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.starttls.enable">true</prop>
<prop key="mail.smtp.ssl.trust">smtp.gmail.com</prop>
</props>
</property>
</bean>-
Attribut :
@Autowired private MailSender mailSender;
-
Message :
SimpleMailMessage message = new SimpleMailMessage(); message.setFrom("from@domain.com"); message.setTo("to@domain.com"); message.setCc("Cc@domain.com"); message.setSubject("Subject"); message.setText("Text");
-
Envoi :
mailSender.send(message);
Il est possible de déclarer des messages par défaut.
-
Bean :
<bean id="forgottenPasswordMessage" class="org.springframework.mail.SimpleMailMessage"> <property name="from" value="sender@gmail.com" /> <property name="subject" value="[Dictionary] SMPT test" /> <property name="text"> <value> <![CDATA[ Hello %s ]]> </value> </property> </bean>
-
Attribut :
@Autowired private SimpleMailMessage templateMessage;
-
Utilisation :
SimpleMailMessage message = new SimpleMailMessage(templateMessage); message.setText(String.format(templateMessage.getText(), "Jean")); mailSender.send(message);
-
Bean :
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> <property name="basename"> <value>fr.pinguet62.dictionary.messages</value> </property> </bean>
où les fichiers de propriétés ont pour chemin
resources/fr/pinguet62/dictionary/messages.properties -
Attribut :
@Autowired private MessageSource messageSource;
-
Utilisation :
String key = "forgottenPassword.messages.emailUnknown"; String[] args = { ... } Locale locale = FacesContext.getCurrentInstance().getViewRoot().getLocale(); String message = messageSource.getMessage(key, args, locale);