相关疑难解决方法(0)

使用Javamail连接到Gmail smtp服务器会忽略指定的端口并尝试使用25

我正在尝试在groovy脚本中使用javamail通过gmail发送电子邮件.我在网上看了很多地方,到目前为止还没能让它运转起来.我在运行脚本时遇到的错误是:

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?))
Run Code Online (Sandbox Code Playgroud)

它似乎尝试使用端口25,即使我已经指定它应该使用端口587.有谁知道可能导致此问题的原因,我已经使用telnet连接到端口587上的smtp服务器,并且thunderbird使用端口587具有STARTTLS安全性,并且能够使用smtp服务器成功发送邮件.这告诉我它不是阻塞端口或连接问题.这是我用来尝试发送电子邮件的代码:

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", …
Run Code Online (Sandbox Code Playgroud)

java groovy gmail smtp jakarta-mail

32
推荐指数
3
解决办法
11万
查看次数

使用JavaMail发送邮件时的javax.net.ssl.SSLException

javax.mail.MessagingException: Exception reading response;
  nested exception is:
        javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
        at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1764)
        at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1523)
        at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:453)
        at javax.mail.Service.connect(Service.java:313)
        at javax.mail.Service.connect(Service.java:172)
        at javax.mail.Service.connect(Service.java:121)
        at javax.mail.Transport.send0(Transport.java:190)
        at javax.mail.Transport.send(Transport.java:120)
        at javaapplication5.SendMail.send(SendMail.java:77)
        at javaapplication5.SendMailTest.main(SendMailTest.java:17)
Caused by: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
        at com.sun.net.ssl.internal.ssl.InputRecord.handleUnknownRecord(InputRecord.java:523)
        at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:355)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:789)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1112)
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:744)
        at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75)
        at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:106)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
        at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:84)
        at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1742)
        ... 9 more
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我使用代理使用JavaMail API发送邮件吗?

java jakarta-mail

23
推荐指数
2
解决办法
5万
查看次数

javax.mail.MessagingException:无法连接到SMTP主机:smtp.gmail.com,port:25;

我用的代码用来发送简单的邮件

import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.io.*;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;

public class SendMailUsingAuthentication
{

  private static final String SMTP_HOST_NAME = "smtp.gmail.com";
  private static final String SMTP_AUTH_USER = "myemail@gmail.com";
  private static final String SMTP_AUTH_PWD  = "mypassword";

  public static void main(String args[]) throws Exception
  {

  }

  public void postMail( String recipients[ ], String subject,String message , String from) throws MessagingException
  {
    try {
        boolean debug = false;

        Properties props = new Properties();
        props.put("mail.smtp.host", SMTP_HOST_NAME);
        props.put("mail.smtp.starttls.enable", "true");
        props.put("mail.smtp.auth", "true");
        Authenticator …
Run Code Online (Sandbox Code Playgroud)

java-ee

15
推荐指数
1
解决办法
7万
查看次数

线程"main"javax.mail.AuthenticationFailedException中的异常

我用来发送简单邮件的代码:

import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import java.io.*;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;

public class SendMailUsingAuthentication
    {
    public static final String SMTP_HOST_NAME = "smtp.gmail.com"; 
    public static final String SMTP_AUTH_USER = "username@gmail.com";
    public static final String SMTP_AUTH_PWD = "password";

    public static final String emailMsgTxt ="error found wgile clicking on an element";
    public static final String emailSubjectTxt ="Test Email";
    public static final String emailFromAddress ="hiphop.sujai@gmail.com";

    public static final String[] emailList = {"receiver.username@gmail.com"};

public void postMail(String recipients [], String subject, String message, String …
Run Code Online (Sandbox Code Playgroud)

java email javax.mail

1
推荐指数
1
解决办法
6582
查看次数

标签 统计

java ×3

jakarta-mail ×2

email ×1

gmail ×1

groovy ×1

java-ee ×1

javax.mail ×1

smtp ×1