Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : erreur avec javamail [ Système / API ] (rakyouna)

mardi 10 octobre 2006 à 14:31:27 | erreur avec javamail

rakyouna

Salut,
Quant j'execute le code suivant, j'aurai l'erreur: "Exception reading response".

import javax.mail.internet.*;
import javax.mail.*;
import java.util.*;
import java.io.*;
import javax.mail.internet.InternetAddress;

public class SimpleSender
{
 public static void main(String args[])
  {
    try
    {
      String smtpServer = "smtp.mail.yahoo.fr";
      String to = "lilie@yahoo.fr";
      String from = "francois@yahoo.fr";
      String subject = "msg envoyé par javamail";
      String body = "slt, c le 1er essai avec javamail. j'espère que ça marchera inchallah! salam";
      send(smtpServer, to, from, subject, body);
    }
    catch (Exception ex)
    {
      System.out.println("Usage: java com.lotontech.mail.SimpleSender"
       +" smtpServer toAddress fromAddress subjectText bodyText");
    }
    System.exit(0);
  }
 
  // "send" method to send the message
  public static void send(String smtpServer, String to, String from, String subject, String body)
  {
    try
    {
      Properties props = System.getProperties();
      // -- Attaching to default Session, or we could start a new one --
      props.put("mail.smtp.host", smtpServer);
      Session session = Session.getDefaultInstance(props, null);
      // -- Create a new message --
      Message msg = new MimeMessage(session);
      // -- Set the FROM and TO fields --
      msg.setFrom(new InternetAddress(from));
      msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false));
      // -- We could include CC recipients too --
      // if (cc != null)
      // msg.setRecipients(Message.RecipientType.CC
      // ,InternetAddress.parse(cc, false));
      // -- Set the subject and body text --
      msg.setSubject(subject);
      msg.setText(body);
      // -- Set some other header information --
      msg.setHeader("X-Mailer", "LOTONtechEmail");
      msg.setSentDate(new Date());
      // -- Send the message --
      Transport.send(msg);
      System.out.println("Message sent OK.");
    }
    catch (Exception ex)
    {
      ex.printStackTrace();
      System.out.println("Erreur: Exception in 'send' method !");
      System.out.println(ex.getMessage());
    }
  }
}
quel est le pb?

jeudi 12 octobre 2006 à 10:37:14 | Re : erreur avec javamail

rakyouna

Bonjour,

Qu'est-ce qu'un serveur d'échange (exchange server)?
A quoi sert-il exactement?
Dois-je le télécharger ou le configurer pour que l'exécution de mon programme marchera bien?
Ou dois-je faire quelque modifications dans d'autres fichiers JDK, Tomcat(j'utilise ce serveur car j'ai des servlets et des JSP),..... pour faire marcher le code?

J'attends vos reponses!
Merci

lundi 16 octobre 2006 à 11:48:40 | Re : erreur avec javamail

Moucave

S@lut rakyouna,

Le problème vient du serveur smtp de yahoo qui est un peu capricieux!! En effet il faut que tu ajoute deux actions à faire dans ton code :
1 : tu dois t'authentifier auprès du serveur smtp.
2 : tu doit changer le port smtp du serveur, qui par défaut est 25, en 587.

Voici ce que tu dois copier pour qui tout ceci marche :
Tu crée une classe pour t'authentifier auorès du serveur smtp, voici le code :

public

class SMTPAuthenticatorService extends Authenticator{
private String username = null;
private String password = null;
public SMTPAuthenticatorService(String username,String password){
this.username = username;
this.password = password;
}
public SMTPAuthenticatorService(){
}
publicvoid setUsername(String username){
this.username = username;
}
publicvoid setPassword(String password){
this.password = password;
}
public PasswordAuthentication getPasswordAuthentication(){
returnnew PasswordAuthentication(username, password);
}
}
Bon une fois que ceci est fait, dans ta classe "SimpleSender" tu met ça comme code :

Properties props = System.getProperties();
SMTPAuthenticatorService auth =

new SMTPAuthenticatorService("nomutilisateur","motdepass");
// -- Attaching to default Session, or we could start a new one --
props.put("mail.smtp.host", smtpServer);
props.put(
"mail.smtp.auth", "true");
props.put(
"mail.smtp.port", Integer.toString(587));

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

Bon, on voit le bout du tunnel! Après tu lances tout ça et MIRACLE!! Ton e-mail sera envoyé!!

Reponse à la question 2

Exchange : c'est un serveur développé par microsoft. C'est une sorte de "super serveur" qui tourne généralement sur des bécanes monstrueuses. Ceci a pour but de centraliser de l'info au sein d'une entreprise (annuaire, messageries, etc...).

Après pour le configurer je ne peux pas te dire, moi je travaille avec un serveur Domino (concurent IBM d'exchange). Je pense que tu dois implémenter tout bêtement ton programme sur le serveur qui sera l'hébergeur.


Voilà tout! En te souhaitant une bonne continuation, je me prend un suppos et je me met au lit moi!!

--- Moucave , petit singe au pays du j2ee  ---



Cette discussion est classé dans : message, send, string, to, msg


Répondre à ce message

Sujets en rapport avec ce message

probleme bizarre avec tomcat et eclipse [ par thesorrow ] Salut,j'ai programmé une application simple(avec dynamic web project sous eclipse) utilisant un fichier xml ayant cette forme[code]                   envoi mail :L'envoi du mail a échoué : Could not connect to SMTP host: pop3.yahoo.fr, port: 25, response: 421 [ par cyberasma ] Je veux envoyer un mail en utilisant un code java. j'ai utilisé le code suivant mais le problème c'est que l'execption suivante m'affiche:L'envoi du m messagerie instantanée [ par meryazer ] Bonjour,je suis pour le moment en train  de faire un mini projet sur la messagerie instantanée en java, le client peut communiquer avec le serveur, le String to array [ par amel2006 ] y'a t'il une méthode pour convertir une chaine en 1 tableau merci amel2006 </STRON Java String to array [ par casporov ] salut je vous prie si possibe de m'envoyer votre reponse aussi a mon second email address qui est nadakho@idm.net.lb j'ai une variable de type str string to int [ par amel2006 ] existe t'il une fonction qui transforme un string to intmerci amel2006 String to Date [ par boumarsel ] quel est la meilleure solution pour lire une date saisie dans une zone de texte et la convertir en un objet de type Date, en vérifiant la saisie sous String to Double [ par lafolle24320 ] Bonjour, Y a t'il méthode du type parseInt qui permet de transformer un string en double? je n'arrive pas à trouver merci bonne prog lafolle to String [ par didoux95 ] Bonjour a tous.est ce qu'il est possible de transformer n'importe quelle objet en String, pour ensuite le retransformer en ce qu'il était.par ex:un Bu problème d'envoi de mail en jsp [ par kodipro ] Bonjour,Je commence à me former un peu en jsp et là je bute sur la fonction d'en de mail. J'ai récupérer un code paramètré selon mes valeurs mais voil


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 4,321 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.