JavaMail avec Gmail: 535-5.7.1 nom d'utilisateur et le Mot de passe n'est pas acceptée
J'ai cette erreur lorsque j'essaie d'envoyer un mail à l'aide de l'API JavaMail. Je suis sûr que le nom d'utilisateur et mot de passe sont 100% correct. Le compte Gmail dont je me connecte est un ancien compte, parce qu'ils disent qu'il faut du temps pour elle de travailler avec de nouveaux comptes.
DEBUG SMTP RCVD: 535-5.7.1 nom d'utilisateur et le Mot de passe n'est pas acceptée. Pour en savoir plus 535 5.7.1 http://mail.google.com/support/bin/answer.py?answer=14257 x35sm3011668 la fmh.6 javax.mail.SendFailedException: l'Envoi a échoué; nested exception est la suivante: javax.mail.AuthenticationFailedException au javax.mail.De Transport.send0(Transports en commun.java:218) au javax.mail.De Transport.envoyer(de Transport.java:80) au Principal.(Principale.java:41) au Principal.principale(Main.java:51)
et c'est mon code:
import javax.mail.*; import javax.mail.internet.*; importer java.util.*; public class main { Chaîne d_email = "[email protected]", d_password = "pass", d_host = "smtp.gmail.com", d_port = "465", m_to = "[email protected]", m_subject = "Test", m_text = "courrier de test."; public Principal() { Properties props = new Properties(); accessoires de jeu.put("mail.smtp.utilisateur", d_email); accessoires de jeu.put("mail.smtp.d'accueil", d_host); accessoires de jeu.put("mail.smtp.port", d_port); accessoires de jeu.put("mail.smtp.starttls.activer","true"); accessoires de jeu.put("mail.smtp.auth", "true"); accessoires de jeu.put("mail.smtp.debug", "true"); accessoires de jeu.put("mail.smtp.socketFactory.port", d_port); accessoires de jeu.put("mail.smtp.socketFactory.class", "javax.net.le protocole ssl.SSLSocketFactory"); accessoires de jeu.put("mail.smtp.socketFactory.de secours", "false"); SecurityManager de sécurité = Système.getSecurityManager(); essayez { Authentificateur auth = new SMTPAuthenticator(); Session session = Session.getInstance(accessoires, auth); session.setDebug(true); MimeMessage msg = new MimeMessage(session); msg.setText(m_text); msg.setSubject(m_subject); msg.setFrom(nouveau InternetAddress(d_email)); msg.addRecipient(Message.RecipientType.POUR les nouveaux InternetAddress(m_to)); De Transport.send(msg); } catch (Exception mex) { mex.printStackTrace(); } } public static void main(String[] args) { Principal bla = new Main(); } privé de classe SMTPAuthenticator extends javax.mail.Authentificateur { public PasswordAuthentication getPasswordAuthentication() { de retour de nouvelle PasswordAuthentication(d_email, d_password); } } }
Le base64 de la valeur de votre mot de passe est visible dans le post original. Je l'ai enlevé il y a une heure, mais il est encore visible dans l'historique des modifications. Je vous recommande fortement de changer votre mot de passe Gmail avant un hacker malveillant peut casser votre compte Gmail.
OriginalL'auteur simplyblue | 2010-06-03
Vous devez vous connecter pour publier un commentaire.
Le fragment de code fonctionne très bien sur mon compte Gmail, donc le problème est ailleurs. Avez-vous suivi le lien donné dans le message d'erreur? Il contient les indications suivantes:
Le dernier point qui est important. Google est très stricte dans ce. Si vous essayez de vous connecter à Gmail, par exemple, plus de 10 fois en une minute, par programme, puis vous pouvez déjà bloqué. Avoir un peu de patience, après quelques temps ça ira débloqué.
Si vous souhaitez plus de liberté dans l'envoi de mails, je vous recommande de regarder pour un mail de l'hôte ou de l'installation de votre propre serveur de messagerie, tels que Apache James ou Microsoft Exchange. J'ai déjà répondu en détail dans l'une de vos questions précédentes.
Il suffit de créer une classe de servlet qui ne la tâche et de créer un formulaire HTML JSP qui se soumet à l'URL où cette servlet est à l'écoute sur. Dans la servlet méthode, vous pouvez simplement écrire et appeler un code Java réel de la manière habituelle. En savoir plus sur JSP/Servlet ici: courses.coreservlets.com/Course-Materials/csajsp2.html
OriginalL'auteur BalusC
J'ai rencontré exactement le même problème, pour moi la raison est que j'ai tourné sur 2-l'étape de vérification sur mon compte gmail.
Après la génération d'une nouvelle demande de mot de passe spécifique et l'utiliser dans mon application java, cette "535 5.7.1" problème est disparu.
Vous pouvez générer une nouvelle demande de mot de passe spécifique à la suite de cette guide officiel de google.
OriginalL'auteur Jifeng Zhang
J'ai eu même problème :
Je me réfère à ce lien, j'ai suivi les étapes ci-dessous il a travaillé pour moi.
Par défaut du compte Gmail est hautement sécurisé. Lorsque nous utilisons smtp de gmail de non gmail outil de messagerie est bloquée. Tester dans notre environnement local, faire de votre compte gmail moins sécurisé que
OriginalL'auteur Laxman G
J'ai le même message d'erreur et voilà comment j'ai résolu le problème,
Créer un mot de passe d'application: ici est de savoir comment nous pouvons générer un mot de passe d'application,
J'ai travaillé pour un Printemps de démarrage de l'app, et j'ai le mot de passe d'application dire,
sadsadaffferere
pour l'adresse e-mail,[email protected]
. Donc, j'ai besoin de configurer l'application des propriétés comme la suivante,Tout fonctionne bien après
OriginalL'auteur Arefe
J'ai affronté le même problème, bien que mon nom d'utilisateur et le mot de passe sont corrects, mais après l'activation de la Moins sûr app accès sur mon compte Gmail, j'ai été en mesure d'envoyer des e-mail par le biais de printemps de démarrage de l'application.
OriginalL'auteur Ashwath