Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javamail 535 5.7.8身份验证失败_Java_Smtp_Jakarta Mail - Fatal编程技术网

Javamail 535 5.7.8身份验证失败

Javamail 535 5.7.8身份验证失败,java,smtp,jakarta-mail,Java,Smtp,Jakarta Mail,我正在使用javamail api发送邮件 以下代码已运行约5个月: public static void sendMail(String dest, String oggetto, String testoEmail, String[] filePath) throws MessagingException{ String sender2="mymail"; String passSender2="mypass"; String smpt2="smpt server";

我正在使用javamail api发送邮件

以下代码已运行约5个月:

public static void sendMail(String dest, String oggetto, String testoEmail, String[] filePath) throws MessagingException{
    String sender2="mymail";
    String passSender2="mypass";
    String smpt2="smpt server";
    String port2="25";
    Properties props = new Properties();
    props.put("mail.smtp.port", port2);  //imposta la porta
    props.put("mail.smtp.host", smpt2);
    props.put("mail.smtps.auth", "true");
    props.put("mail.debug", "true");
    props.put("mail.smtp.starttls.enable","true");  //imposta la connessione cifrata





    Session session = Session.getDefaultInstance(props, null);

    MimeMessage message = getMessage(filePath, oggetto, session, testoEmail);


    InternetAddress fromAddress = new InternetAddress(sender2);
    InternetAddress toAddress = new InternetAddress(dest);
    message.setFrom(fromAddress);
    message.setRecipient(Message.RecipientType.TO, toAddress);
    Transport transport = session.getTransport("smtp");
    transport.connect(smpt2, 25, sender2, passSender2);

    transport.sendMessage(message, message.getAllRecipients());
    transport.close();
}
但现在我得到了这个错误:

535 5.7.8 Error: authentication failed: authentication failure
我试着用

props.put("mail.smtp.auth.mechanisms", "VALUE" );
使用Value=“LOGIN”或Value=“PLAIN”或Value=“DIGEST-MD5”或Value=“CRAM-MD5”,但没有任何效果。 我试图通过网络邮件发送一封电子邮件,它成功了,所以我的帐户没有关闭,我的凭据也正确

这是调试跟踪:

DEBUG SMTP: useEhlo true, useAuth false
DEBUG SMTP: trying to connect to host "smtserver", port 25, isSSL false
220 smtserver ESMTP Postfix
DEBUG SMTP: connected to host "smtserver", port: 25

EHLO MYPC
250-smtserver
250-PIPELINING
250-SIZE 102400000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
DEBUG SMTP: Found extension "PIPELINING", arg ""
DEBUG SMTP: Found extension "SIZE", arg "102400000"
DEBUG SMTP: Found extension "VRFY", arg ""
DEBUG SMTP: Found extension "ETRN", arg ""
DEBUG SMTP: Found extension "AUTH", arg "LOGIN PLAIN"
DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Found extension "DSN", arg ""
DEBUG SMTP: Attempt to authenticate
DEBUG SMTP: check mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM 
AUTH LOGIN
334 VevergrgEDFEF6
SC,OPVKDVEPOVKPOKPKPPK
334 dvelvrevrevr
WEFERFREFREFD
535 5.7.8 Error: authentication failed: authentication failure

您有什么想法吗?

尝试将Session.getDefaultInstance更改为Session.getInstance


如果没有帮助,请包含更多显示故障的调试输出。

没有帮助,但我发布了调试跟踪,感谢您的answare。有几点。。。1) 您似乎正在使用旧版本的JavaMail,您可能需要升级;2) 立即更改您的密码,身份验证登录后的base64编码内容是您的用户名和密码,任何人都可以对其进行解码;3) 您已启用starttls,但您的服务器不支持它;4) 以上所有内容都表明您的服务器认为您没有提供正确的用户名或密码,请尝试发送不带@hostname部分的用户名。