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 !

ENVOIE DE MAILS


Information sur la source

Catégorie :JavaBeans Niveau : Débutant Date de création : 09/12/2003 Vu : 11 726

Note :
5,57 / 10 - par 7 personnes
5,57 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

c'est un Bean qui permet a travers une appli d'envoyer un mail, avec les differents elements telque adresse emetteur,  le message le sujet predefini ....
 

Source

  • import java.util.*;
  • import java.text.*;
  • //import javax.ejb.*;
  • import javax.mail.*;
  • //import javax.activation.*;
  • import javax.mail.internet.*;
  • import javax.naming.*;
  • public class MailerBean {
  • private static final String mailer = "JavaMailer";
  • // bean attributes
  • private String _mailSessionName = "";
  • private String _text ="Default message.\nIf you see this message, please contact web applications administrator.";
  • private String _subject="Default subject";
  • private String _recipient="";
  • private String _from="";
  • // Constructor
  • public MailerBean() {}
  • // Setters
  • public void setText(String theText) { _text=theText; }
  • public void setSubject(String theSubject) { _subject=theSubject; }
  • public void setRecipient(String theRecipient) { _recipient=theRecipient; }
  • public void setFrom(String theFrom) { _from=theFrom; }
  • public void setMailSessionName(String newMailSessionName) { _mailSessionName = newMailSessionName; }
  • // Getters
  • public String getText() { return _text; }
  • public String getSubject() { return _subject; }
  • public String getRecipient() { return _recipient; }
  • public String getFrom() {return _from; }
  • public String getMailSessionName() { return _mailSessionName; }
  • // Methods
  • public boolean sendMessage() {
  • try {
  • Context initial = new InitialContext();
  • Session session = (Session) initial.lookup(_mailSessionName);
  • DateFormat dateFormatter = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.SHORT);
  • Date timeStamp = new Date();
  • Message msg = new MimeMessage(session);
  • // recuperation des informations a envoyer
  • msg.setFrom(new InternetAddress(this.getFrom()));
  • msg.setHeader("X-Mailer", mailer);
  • msg.setSentDate(timeStamp);
  • msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(this.getRecipient() , false));
  • msg.setSubject(this.getSubject());
  • msg.setText(this.getText() );
  • // envoie du mail
  • Transport.send(msg);
  • System.out.println("Mail sent");
  • return true;
  • } catch(Exception e) {
  • System.out.println("Exception occured in mailer bean : " + e.getMessage() );
  • return false;
  • }
  • }
  • }
import java.util.*;
import java.text.*;
//import javax.ejb.*;
import javax.mail.*;
//import javax.activation.*;
import javax.mail.internet.*;
import javax.naming.*;

public class MailerBean {

  private static final String mailer = "JavaMailer";

  // bean attributes
  private String _mailSessionName = "";
  private String _text ="Default message.\nIf you see this message, please contact web applications administrator.";
  private String _subject="Default subject";
  private String _recipient="";
  private String _from="";

  // Constructor
  public MailerBean() {}

  // Setters
  public void setText(String theText) { _text=theText;  }
  public void setSubject(String theSubject) { _subject=theSubject;  }
  public void setRecipient(String theRecipient) { _recipient=theRecipient;  }
  public void setFrom(String theFrom) { _from=theFrom; }
  public void setMailSessionName(String newMailSessionName) {    _mailSessionName = newMailSessionName;  }

  // Getters
  public String getText() { return _text;  }
  public String getSubject() { return _subject;  }
  public String getRecipient() { return _recipient;  }
  public String getFrom() {return _from; }
  public String getMailSessionName() {    return _mailSessionName;  }

  // Methods
  public boolean sendMessage() {

      try {
          Context initial = new InitialContext();
          Session session = (Session) initial.lookup(_mailSessionName);

          DateFormat dateFormatter = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.SHORT);
          Date timeStamp = new Date();

          Message msg = new MimeMessage(session);
          
          // recuperation des informations a envoyer
          msg.setFrom(new InternetAddress(this.getFrom()));
          msg.setHeader("X-Mailer", mailer);
          msg.setSentDate(timeStamp);
          msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(this.getRecipient() , false));
          msg.setSubject(this.getSubject());

          msg.setText(this.getText() );
 	 // envoie du mail         
          Transport.send(msg);

          System.out.println("Mail sent");
          return true;
      } catch(Exception e) {
          System.out.println("Exception occured in mailer bean : " + e.getMessage() );
          return false;
      }
  }




}

Commentaires et avis

signaler à un administrateur
Commentaire de pdl le 10/12/2003 08:31:27

Petite question, mais je préfère aussi dire tout de suite que je n'ai pas testé, comment ton code trouve le serveur smtp ? N'y a-t-il pas moyen de spécifier le serveur smtp quelque part ? D'avance merci.

signaler à un administrateur
Commentaire de steveurcle le 10/12/2003 21:01:41

salut PDL ,
j'ai utilise se code dans une appli jsp j'ai donc defini le serveur smtp dans un .xml
<Resource name="mail/test" type="javax.mail.Session">
<ResourceParams name="mail/test">
<parameter><name>mail.smtp.host</name>
                  <value>adresseMail</value>
</parameter>
tu peux aussi definir dans ce fichier l'adresse de l'emetteur du mail par defaut
<parameter><name>from</name>
                  <value>monAdresseMailParDefaut</value>
</parameter>
</ResourceParams>

signaler à un administrateur
Commentaire de Gaelle le 12/12/2003 03:07:30

Juste une question aussi... Ton appli gère-t-elle les serveur SMTP où une authentification est obligatoire ? Je crois que ça s'appelle SMTP extended.
Sinon ce doit-être sympa un petit formulaire sur sa page... Je prendrai un peu de temps pour tester ;-)

Bonne continuation, Gaëlle

signaler à un administrateur
Commentaire de brimoxus le 26/04/2004 16:08:37

j'ai voulu juste comprendre comment utiliser ce bean et un exemple de mailSessionName dans le cas d'un serveur smtp...merci

signaler à un administrateur
Commentaire de abdoo05 le 25/11/2005 09:51:11

salut,
j'ai déja le package mail.jar et je travail avec Jbuilder 2005,mais le probléme est que je n'ai pas arriver à l'installer..
alors si tu pourra m'aider et merci d'avance

signaler à un administrateur
Commentaire de lnp le 19/05/2006 11:14:22

Salut à tous,

Cette classe d'envoie de mail m'intéresse beaucoup mais en voulant la tester, j'ai un plantage sur la ligne
"Session session = (Session) initial.lookup(_mailSessionName);"

Je ne sais pas ce qu'il faudrait mettre dans la variable "_mailSessionName" ? ! Quelqu'un pourrait-il me donner un exemple d'utilisation ? Ou au moins une orientation.

Merci.

--
LNP...
pour vous...

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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 : 0,187 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é.