You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by mg...@apache.org on 2015/03/18 10:54:08 UTC

isis git commit: ISIS-1099 Make it possible to use images loaded from the classpath in email templates

Repository: isis
Updated Branches:
  refs/heads/master f9d34ae74 -> 8e1fc5fc9


ISIS-1099 Make it possible to use images loaded from the classpath in email templates


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/8e1fc5fc
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/8e1fc5fc
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/8e1fc5fc

Branch: refs/heads/master
Commit: 8e1fc5fc98a8a399a2436dc40f3d74d255071062
Parents: f9d34ae
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Wed Mar 18 11:48:43 2015 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Wed Mar 18 11:54:02 2015 +0200

----------------------------------------------------------------------
 .../services/email/EmailServiceDefault.java        | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/8e1fc5fc/core/runtime/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java
index ba67146..bac3ad4 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java
@@ -20,20 +20,24 @@ package org.apache.isis.core.runtime.services.email;
 
 import java.util.List;
 import java.util.Properties;
+
 import javax.activation.DataSource;
 import javax.annotation.PostConstruct;
-import com.google.common.base.Strings;
+
 import org.apache.commons.mail.DefaultAuthenticator;
 import org.apache.commons.mail.EmailException;
-import org.apache.commons.mail.HtmlEmail;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.apache.commons.mail.ImageHtmlEmail;
+import org.apache.commons.mail.resolver.DataSourceClassPathResolver;
 import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.services.email.EmailService;
 import org.apache.isis.core.commons.config.IsisConfiguration;
 import org.apache.isis.core.runtime.system.context.IsisContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.google.common.base.Strings;
 
 /**
  * A service that sends email notifications when specific events occur
@@ -47,7 +51,6 @@ public class EmailServiceDefault implements EmailService {
     private static final Logger LOG = LoggerFactory.getLogger(EmailServiceDefault.class);
 
     //region > constants
-
     private static final String ISIS_SERVICE_EMAIL_SENDER_ADDRESS = "isis.service.email.sender.address";
     private static final String ISIS_SERVICE_EMAIL_SENDER_PASSWORD = "isis.service.email.sender.password";
 
@@ -128,12 +131,12 @@ public class EmailServiceDefault implements EmailService {
                         final DataSource... attachments) {
 
         try {
-
-            final HtmlEmail email = new HtmlEmail();
+            final ImageHtmlEmail email = new ImageHtmlEmail();
             email.setAuthenticator(new DefaultAuthenticator(senderEmailAddress, senderEmailPassword));
             email.setHostName(getSenderEmailHostName());
             email.setSmtpPort(senderEmailPort);
             email.setStartTLSEnabled(getSenderEmailTlsEnabled());
+            email.setDataSourceResolver(new DataSourceClassPathResolver("/", true));
 
             final Properties properties = email.getMailSession().getProperties();