[prev in list] [next in list] [prev in thread] [next in thread] 

List:       jakarta-commons-dev
Subject:    [jira] Created: (EMAIL-83) Problems using SMTP authentication with
From:       "Aaron Baff (JIRA)" <jira () apache ! org>
Date:       2008-10-28 17:37:44
Message-ID: 2100211294.1225215464241.JavaMail.jira () brutus
[Download RAW message or body]

Problems using SMTP authentication with JavaMail 1.4.1
------------------------------------------------------

                 Key: EMAIL-83
                 URL: https://issues.apache.org/jira/browse/EMAIL-83
             Project: Commons Email
          Issue Type: Bug
    Affects Versions: 1.1
         Environment: Java5, Netbeans 6.1, Commons/Email 1.1, JavaMail 1.4.1, JAF \
1.1.1  Reporter: Aaron Baff


I am trying to use SimpleEmail based off of the example on the Commons/Email site to \
send an email. I plan on probably going to an HtmlEmail, but I thought I would start \
out simple and basic. The code I am using is shown below. The problem I am running \
into is that my SMTP server requires authentication, so I added the Authenticator as \
shown below with a correct username and password (tested and known working). \
Unfortunately, my server keeps rejecting my authentication so in \
javax.mail.Transport.send() @line 188 it tries to connected, fails the authentication \
and then on the next line it tries to send the message which results in an exception \
because the server won't let it send. I have found that in the \
javax.mail.Service.connect() @line 206, it goes through the connect sequence which \
includes trying to find the user/pass through various means. When it gets to line 268 \
it hasn't gotten a password yet, and so tries to look it up on the session via \
javax.mail.Session.getPasswordAuthentication(). It uses the Service.getURLName() as \
the key to pass to the authTable (HashTable) which contains PasswordAuthentication. \
Unfortunately, the DefaultAuthenticator set as part of SimpleEmail.setAuthenticator() \
is in the variable authenticator in the Session, not in the authTable. 

I have also tried with JavaMail 1.4 and similar results, although I did not run in \
debug and step through it, I believe it performs the same behavior due to the 1.4.1 \
changes (http://java.sun.com/products/javamail/CHANGES.txt) which say nothing about \
it.

SimpleEmail email = new SimpleEmail();
email.setDebug(true);
email.setAuthenticator(new DefaultAuthenticator("<USERNAME>", "<PASSWORD>"));
email.setHostName("<SMTP HOST>");
email.setSmtpPort(587);
email.addTo("<TO EMAIL>", "Test Person");
email.setFrom("<FROM EMAIL>");
email.setSubject("Test message");
email.setMsg("This is a simple test of commons-email");
email.send();

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic