Note that there are some explanatory texts on larger screens.

plurals
  1. POUsing Javamail to connect to Gmail smtp server ignores specified port and tries to use 25
    primarykey
    data
    text
    <p>I'm trying to use javamail in a groovy script to send out an email via gmail. I've looked many places online and have been unable to get it working thus far. The error I'm getting when running my script is:</p> <pre><code>DEBUG SMTP: useEhlo true, useAuth false DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 25, isSSL false Caught: javax.mail.SendFailedException: Send failure (javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 25 (javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?)) </code></pre> <p>It appears to be trying to use port 25 even though I've specified that it should use port 587. Does anyone know what could be causing this problem, I've used telnet to connect to the smtp server on port 587, and thunderbird uses port 587 with STARTTLS security and is able to successfully send mail using the smtp server. This tells me that it is not a blocked port or connectivity issue. Here is the code I'm using to try and send the email:</p> <pre><code>import javax.mail.* import javax.mail.internet.* private class SMTPAuthenticator extends Authenticator { public PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication('email@gmail.com', 'password'); } } def d_email = "email@gmail.com", d_password = "password", d_host = "smtp.gmail.com", d_port = "587", //465,587 m_to = "email@gmail.com", m_subject = "Testing", m_text = "This is a test." def props = new Properties() props.put("mail.smtp.user", d_email) props.put("mail.smtp.host", d_host) props.put("mail.smtp.port", d_port) props.put("mail.smtp.starttls.enable","true") props.put("mail.smtp.debug", "true"); props.put("mail.smtp.auth", "true") props.put("mail.smtp.socketFactory.port", d_port) props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory") props.put("mail.smtp.socketFactory.fallback", "false") def auth = new SMTPAuthenticator() def session = Session.getInstance(props, auth) session.setDebug(true); def msg = new MimeMessage(session) msg.setText(m_text) msg.setSubject(m_subject) msg.setFrom(new InternetAddress(d_email)) msg.addRecipient(Message.RecipientType.TO, new InternetAddress(m_to)) Transport.send(msg) </code></pre> <p>Any help would be greatly appreciated. Thanks in advance!</p> <p>-Bryan</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload