diff --git a/src/main/java/org/nrg/xnat/event/listeners/methods/SmtpHandlerMethod.java b/src/main/java/org/nrg/xnat/event/listeners/methods/SmtpHandlerMethod.java
index ecd387055e0017b5108b73bdbaeba709881137dc..daf218b31ea4347823d5b2c6d9fd3adb844f7554 100644
--- a/src/main/java/org/nrg/xnat/event/listeners/methods/SmtpHandlerMethod.java
+++ b/src/main/java/org/nrg/xnat/event/listeners/methods/SmtpHandlerMethod.java
@@ -1,6 +1,7 @@
 package org.nrg.xnat.event.listeners.methods;
 
 import com.google.common.collect.ImmutableList;
+import org.nrg.mail.services.MailService;
 import org.nrg.xdat.XDAT;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -11,10 +12,7 @@ import org.springframework.mail.javamail.JavaMailSenderImpl;
 import org.springframework.stereotype.Component;
 
 import javax.inject.Inject;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @Component
 public class SmtpHandlerMethod extends AbstractNotificationsPreferenceHandlerMethod {
@@ -45,13 +43,27 @@ public class SmtpHandlerMethod extends AbstractNotificationsPreferenceHandlerMet
             mailSender.setPassword(XDAT.getNotificationsPreferences().getPassword());
             mailSender.setProtocol(XDAT.getNotificationsPreferences().getProtocol());
 
+            Properties oldMailProperties = mailSender.getJavaMailProperties();
+            boolean smtpEnabled = XDAT.getNotificationsPreferences().getSmtpEnabled();
+            boolean smtpAuth = XDAT.getNotificationsPreferences().getSmtpAuth();
+            boolean startTls = XDAT.getNotificationsPreferences().getSmtpStartTls();
+            String sslTrust = XDAT.getNotificationsPreferences().getSmtpSSLTrust();
+            _mailService.setSmtpEnabled(smtpEnabled);
+            oldMailProperties.setProperty("smtp.enabled",String.valueOf(smtpEnabled));
+            oldMailProperties.setProperty("mail.smtp.auth",String.valueOf(smtpAuth));
+            oldMailProperties.setProperty("mail.smtp.starttls.enable",String.valueOf(startTls));
+            if(sslTrust!=null) {
+                oldMailProperties.setProperty("mail.smtp.ssl.trust", sslTrust);
+            }
+            mailSender.setJavaMailProperties(oldMailProperties);
+
 		} catch (Exception e1) {
 			_log.error("", e1);
 		}
 	}
 
     private static final Logger       _log        = LoggerFactory.getLogger(SmtpHandlerMethod.class);
-    private static final List<String> PREFERENCES = ImmutableList.copyOf(Arrays.asList("smtp.enabled", "host","port", "username","password", "protocol"));
+    private static final List<String> PREFERENCES = ImmutableList.copyOf(Arrays.asList("smtp.enabled", "host","port", "username","password", "protocol","smtp.enabled", "mail.smtp.auth","mail.smtp.starttls.enable", "mail.smtp.ssl.trust"));
 
     @Autowired
     @Lazy
@@ -60,4 +72,7 @@ public class SmtpHandlerMethod extends AbstractNotificationsPreferenceHandlerMet
     @Inject
     private JavaMailSenderImpl mailSender;
 
+    @Autowired
+    private MailService _mailService;
+
 }