I'm using javamail api to send mails.

The following code has been working for about 5 months:

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();

}

But now i get this error:

535 5.7.8 Error: authentication failed: authentication failure

I tried to use

props.put("mail.smtp.auth.mechanisms", "VALUE" );

with Value="LOGIN" or value="PLAIN" or value="DIGEST-MD5" or value="CRAM-MD5" but nothing worked.

I tried to send an email through the webmail and it worked, so my account is not closed, and my credentials are right.

This is the debug trace:

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

Do you have some ideas?

解决方案

Try changing Session.getDefaultInstance to Session.getInstance.

If that doesn't help, include more of the debug output showing the failure.

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐