IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres Java Discussion :

Impossible d'envoyer des mails par smtp.mail.yahoo.com


Sujet :

Autres Java

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 213
    Points : 96
    Points
    96
    Par défaut Impossible d'envoyer des mails par smtp.mail.yahoo.com
    Bonjour à tous,

    J'ai un problème de port pour smtp.mail.yahoo.com, j'ai vu dans des forums que le problème viendrait du fait qu'il faut avoir le yahoo version payant ou un truc du genre.
    Le message d'erreur est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    com.sun.mail.util.MailConnectException: Couldn't connect to host, port: smtp.mail.yahoo.com , 587; timeout -1;
    Auriez-vous une idée ? dans le cas contraire j'essayerai avec hotmail.fr

  2. #2
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 213
    Points : 96
    Points
    96
    Par défaut
    Je viens d'essayer avec hotmail et même problème donc ça doit peut-être venir d'ailleurs

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2016
    Messages : 213
    Points : 96
    Points
    96
    Par défaut
    C'est bon mais je l'ai fait avec un autre code voici le code complet dans une seule classe, il y a juste à modifier le host, user et password :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
     
    package test;
     
    import java.util.Properties;
     
    import javax.mail.Address;
    import javax.mail.Message;
    import javax.mail.MessagingException;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;
     
    public class testMail {
    	final static String HOST = "smtp.live.com"; //pour hotmail
    	final static String EXPEDITEUR = "mon adresse mail";
    	final static String PASSWORD = "mon mot de passe";
    	final static String DESTINATAIRE = "adresse mail du destinataire";
     
    	public static void main(String[] args) {
    		// test
    		String subject = "Sujet";
    		String text = "Ceci est mon texte";
    		String destinataire = DESTINATAIRE;
    		String copyDest = "adresse mail en copie";
     
    		sendMessage(subject, text, destinataire, copyDest);
    	}
     
    	/*
    	 * L'envoi du message se fait en trois étapes :
    	 * 
    	 * création d'une Session ; création d'un objet Message, auquel nous
    	 * ajoutons les destinataires ; envoi du message, grâce à un objet
    	 * Transport. Voyons ces étapes une à une :
    	 */
    	public static void sendMessage(String subject, String text, String destinataire, String copyDest) {
    		// 1 -> Création de la session
    		Properties properties = new Properties();
    		properties.setProperty("mail.transport.protocol", "smtp");
    		properties.setProperty("mail.smtp.host", HOST);
    		properties.setProperty("mail.smtp.user", EXPEDITEUR);
    		properties.setProperty("mail.from", DESTINATAIRE);
    		properties.setProperty("mail.smtp.starttls.enable", "true");
    		Session session = Session.getInstance(properties);
     
    		/*
    		 * Pour construire une Session, nous avons besoin de quelques
    		 * propriétés, comme le protocole (SMTP dans notre cas), le serveur,
    		 * ainsi que des informations d'identification, mais sans le mot de
    		 * passe. Ce dernier nous sera demandé lors de la connexion par l'objet
    		 * Transport. Pour connaître l'ensemble des propriétés, je vous renvoie
    		 * à la documentation officielle de Javamail.
    		 * 
    		 * Maintenant que nous avons notre session, créons notre message :
    		 */
    		// 2 -> Création du message
    		MimeMessage message = new MimeMessage(session);
    		try {
    			message.setText(text);
    			message.setSubject(subject);
    			message.addRecipients(Message.RecipientType.TO, destinataire);
    			message.addRecipients(Message.RecipientType.CC, copyDest);
    		} catch (MessagingException e) {
    			e.printStackTrace();
    		}
    		// Rien de compliqué : on instancie notre message en lui passant en
    		// paramètre la session, puis on ajoute le texte, le sujet et les
    		// destinataires. Reste à l'envoyer :
    		// 3 -> Envoi du message
    		try {
    			Transport transport = session.getTransport("smtp");
    			transport.connect(EXPEDITEUR, PASSWORD);
    			transport.sendMessage(message,
    					new Address[] { new InternetAddress(destinataire), new InternetAddress(copyDest) });
    			if (transport != null) {
    				transport.close();
    			}
    		} catch (MessagingException e) {
    			e.printStackTrace();
    		}
    	}
    }
    // C'est tout aussi simple : notre session nous donne un objet Transport,
    // qui nous permet de nous connecter au serveur SMTP et d'envoyer le message
    // à nos destinataires. Attention, pour créer l'objet Transport à partir de
    // la session, pensez à mettre le protocole en minuscules ! Et bien entendu,
    // on ferme notre connexion.
    // Rien de bien compliqué, mais nous avons cependant affaire à quelques
    // subtilités. En premier lieu, il est possible, mais pas toujours,
    // d'envoyer des messages sans indiquer les propriétés. Tout dépend du
    // serveur SMTP et de sa configuration. J'ai réussi avec l'un, pas avec
    // l'autre (smtp.laposte.net). Le mieux est donc de les mettre
    // systématiquement. Ensuite, la propriété mail.host doit impérativement
    // correspondre au nom du serveur SMTP. En général, c'est celui utilisé pour
    // l'envoi, mais pas toujours. Si on se trompe, tout ce qu'on obtient est
    // une exception :
    Voilà tout...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/04/2012, 15h31
  2. impossible d'envoyer des messages par Outlook 2007
    Par INDUSTRINFO dans le forum Outlook
    Réponses: 1
    Dernier message: 25/09/2011, 18h24
  3. [Mail] Envoi de mail par SMTP ?
    Par Borami dans le forum Langage
    Réponses: 1
    Dernier message: 03/01/2006, 13h26
  4. envoyer des données par mail
    Par zorba49 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/12/2005, 12h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo