Author: snoopdave
Date: Tue Jul 31 09:11:15 2007
New Revision: 561374

URL: http://svn.apache.org/viewvc?view=rev&rev=561374
Log:
Fix for email notification problems and:
http://opensource.atlassian.com/projects/roller/browse/ROL-1415

Fix is to only setup SMTP auth when username/password are provided.

Modified:
    
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/business/MailProvider.java
    
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/config/roller.properties
    
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/MembersInvite.java
    
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/util/MailUtil.java

Modified: 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/business/MailProvider.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/business/MailProvider.java?view=diff&rev=561374&r1=561373&r2=561374
==============================================================================
--- 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/business/MailProvider.java
 (original)
+++ 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/business/MailProvider.java
 Tue Jul 31 09:11:15 2007
@@ -63,7 +63,10 @@
         mailUsername = WebloggerConfig.getProperty("mail.username");
         mailPassword = WebloggerConfig.getProperty("mail.password");
         try {
-            mailPort = 
Integer.parseInt(WebloggerConfig.getProperty("mail.port"));
+            String portString = WebloggerConfig.getProperty("mail.port");
+            if (portString != null) {
+                mailPort = Integer.parseInt(portString);
+            }
         } catch (Throwable t) {
             log.warn("mail server port not a valid integer, ignoring");
         }
@@ -80,8 +83,12 @@
         } else {
             Properties props = new Properties();
             props.put("mail.smtp.host", mailHostname);
-            props.put("mail.smtp.auth", "true");
-            if (mailPort != -1) props.put("mail.smtp.port", ""+mailPort);
+            if (mailUsername != null && mailPassword != null) {
+                props.put("mail.smtp.auth", "true");   
+            }
+            if (mailPort != -1) {
+                props.put("mail.smtp.port", ""+mailPort);
+            }
             session = Session.getDefaultInstance(props, null);
         }
         
@@ -117,6 +124,8 @@
                 transport.connect(mailHostname, mailPort, mailUsername, 
mailPassword); 
             } else if (mailUsername != null && mailPassword != null) {
                 transport.connect(mailHostname, mailUsername, mailPassword); 
+            } else {
+                transport.connect();
             }
         } else {
             // Assume container set things up properly

Modified: 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/config/roller.properties
URL: 
http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/config/roller.properties?view=diff&rev=561374&r1=561373&r2=561374
==============================================================================
--- 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/config/roller.properties
 (original)
+++ 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/config/roller.properties
 Tue Jul 31 09:11:15 2007
@@ -93,10 +93,12 @@
 # For mail configuration type 'jndi', this will be used
 mail.jndi.name=mail/Session
 
-# For database configuration type of 'properties', you MUST override these
+# For mail configuration type of 'properties', you MUST override hostname
 mail.hostname=
-mail.username=
-mail.password=
+
+# Only override mail username and password if your mail server requires them
+#mail.username=
+#mail.password=
 
 
 #-----------------------------------------------------------------------------

Modified: 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/MembersInvite.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/MembersInvite.java?view=diff&rev=561374&r1=561373&r2=561374
==============================================================================
--- 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/MembersInvite.java
 (original)
+++ 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/ui/struts2/editor/MembersInvite.java
 Tue Jul 31 09:11:15 2007
@@ -132,7 +132,7 @@
             
             addMessage("inviteMember.userInvited");
             
-            try {
+            if (MailUtil.isMailConfigured()) try {
                 MailUtil.sendWeblogInvitation(getActionWeblog(), user);
             } catch (WebloggerException e) {
                 // TODO: this should be an error except that struts2 misbehaves

Modified: 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/util/MailUtil.java
URL: 
http://svn.apache.org/viewvc/roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/util/MailUtil.java?view=diff&rev=561374&r1=561373&r2=561374
==============================================================================
--- 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/util/MailUtil.java
 (original)
+++ 
roller/trunk/apps/weblogger/src/java/org/apache/roller/weblogger/util/MailUtil.java
 Tue Jul 31 09:11:15 2007
@@ -474,7 +474,7 @@
                 }
             }
         } catch (Exception e) {
-            log.warn("Exception sending comment mail: " + e.getMessage());
+            log.warn("Exception sending comment notification mail", e);
             // This will log the stack trace if debug is enabled
             if (log.isDebugEnabled()) {
                 log.debug(e);


Reply via email to