2010-01-18 5 views
0

Je crée un formulaire, qui enverra les détails par e-mail lorsque l'utilisateur remplira ses informations et cliquera sur soumettre.Comment envoyer un courrier à partir de JavaMail via Localhost

Soumission Mail avec JavaMail:

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
throws ServletException, IOException { 

    PrintWriter out = response.getWriter(); 
    try { 
     String host = "localhost"; 
     String from = "[email protected]"; 

     try { 
     Properties props = System.getProperties(); 
     props.put("mail.smtp.host", host); 
     props.put("mail.smtp.user", from); 
     props.put("mail.debug", "true"); 

     Session session = Session.getDefaultInstance(props, null); 
     session.setDebug(true); 
     Transport transport = session.getTransport("smtp"); 

     MimeMessage message = new MimeMessage(session); 
     Address fromAddress = new InternetAddress("[email protected]"); 

     message.setFrom(fromAddress); 

     InternetAddress to = new InternetAddress("[email protected]"); 
     message.addRecipient(Message.RecipientType.TO, to); 

     message.setSubject("Email Details Sending"); 
     message.setText("This is my testing content."); 

     transport.connect(host, from); 
     message.saveChanges(); 
     Transport.send(message); 
     transport.close(); 
    } finally { 
     out.close(); 
    } 
} 

J'utilise des alias e-mail pour [email protected] qui signifie que je pourrais avoir 4 alias e-mail de sendToAliases. Cependant, je ne parviens pas à joindre les courriels lors du déploiement et de l'exécution du fichier courrier ci-dessus. Quelqu'un peut-il me conseiller?

Merci.

+2

Avez-vous un serveur SMTP? –

+0

Oui, je viens de faire un telnet myserver 25 –

Répondre

2
  • Avez-vous vérifié les fichiers journaux?
  • Avez-vous des exceptions ou des erreurs lors de l'exécution du programme?
  • Avez-vous un serveur SMTP fonctionnant dans localhost?
  • Le serveur SMTP accepte-t-il les connexions de localhost?
  • Pouvez-vous envoyer des e-mails via ce serveur en utilisant un client de messagerie normal et les recevoir en quelque sorte?
  • Essayez de faire votre programme un programme autonome et commandline essayer de l'exécuter

Vous semblez avoir un devis manquant dans message.setSubject("Email Details Sending);. Êtes-vous sûr que votre servlet compile réellement?

+0

Salut, J'ai testé que l'envoi de courriels à partir de la ligne de commande en utilisant telnet, ça fonctionne parfaitement. En ce qui concerne le message.setSubject ("Email Details Sending); est une faute de frappe due au collage, je l'ai dans le code. –

Questions connexes