title: JavaMail Gmail issue. "Ready to start TLS" then fails
body: <pre><code>    mailServerProperties = System.getProperties();
      mailServerProperties.put("mail.smtp.port", "587");
      mailServerProperties.put("mail.smtp.auth", "true");
      mailServerProperties.put("mail.smtp.ssl.trust", "*");
      mailServerProperties.put("mail.smtp.starttls.enable", "true");
      mailServerProperties.put("mail.debug", "true");
  
      getMailSession = Session.getDefaultInstance(mailServerProperties, null);
      generateMailMessage = new MimeMessage(getMailSession);
      generateMailMessage.addRecipient(Message.RecipientType.TO, new InternetAddress("blah@gmail.com"));
      generateMailMessage.addRecipient(Message.RecipientType.CC, new InternetAddress("blah@gmail.com"));
      generateMailMessage.setSubject("Greetings");
      String emailBody = "Test email";
      generateMailMessage.setContent(emailBody, "text/html");
      System.out.println("Mail Session has been created successfully..");
  
      Transport transport = getMailSession.getTransport("smtp");
  
      transport.connect("smtp.gmail.com", 587, "user", "password");
      transport.sendMessage(generateMailMessage, generateMailMessage.getAllRecipients());
      transport.close();
  </code></pre>
  
  <p>I also installed the gmail smtp certificate in my keystore 
      openssl s_client -connect smtp.gmail.com:465</p>
  
  <pre><code>DEBUG: getProvider() returning    javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
  DEBUG SMTP: useEhlo true, useAuth true
  DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 587, isSSL false
  220 smtp.gmail.com ESMTP i80sm10888185wmf.11 - gsmtp
  DEBUG SMTP: connected to host "smtp.gmail.com", port: 587
  
  EHLO uk-lon01-mws07
  250-smtp.gmail.com at your service, [2.220.210.180]
  250-SIZE 35882577
  250-8BITMIME
  250-STARTTLS
  250-ENHANCEDSTATUSCODES
  250-PIPELINING
  250-CHUNKING
  250 SMTPUTF8
  DEBUG SMTP: Found extension "SIZE", arg "35882577"
  DEBUG SMTP: Found extension "8BITMIME", arg ""
  DEBUG SMTP: Found extension "STARTTLS", arg ""
  DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
  DEBUG SMTP: Found extension "PIPELINING", arg ""
  DEBUG SMTP: Found extension "CHUNKING", arg ""
  DEBUG SMTP: Found extension "SMTPUTF8", arg ""
  STARTTLS
  220 2.0.0 Ready to start TLS (BOMBS OUT AT THIS POINT)
  Exception in thread "main" javax.mail.MessagingException: Could not convert socket     to TLS;
    nested exception is:
  javax.net.ssl.SSLHandshakeException: Remote host closed connection during     handshake
  at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:2046)
  at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:711)
  at javax.mail.Service.connect(Service.java:366)
  at com.lawrenceadams.Mail.generateAndSendEmail(Mail.java:50)
  at com.lawrenceadams.Mail.main(Mail.java:16)
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  at     sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:497)
  at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
  Caused by: javax.net.ssl.SSLHandshakeException: Remote host closed connection     during handshake
  at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:992)
  at     sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
  at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
  at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
  at com.sun.mail.util.SocketFetcher.configureSSLSocket(SocketFetcher.java:598)
  at com.sun.mail.util.SocketFetcher.startTLS(SocketFetcher.java:525)
  at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:2041)
  ... 9 more
   Caused by: java.io.EOFException: SSL peer shut down incorrectly
  at sun.security.ssl.InputRecord.read(InputRecord.java:505)
  at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)
  ... 15 more
  </code></pre>
  
  <p>Can anyone help? Been struggling on this for the last couple hours.</p>