sábado, setiembre 25, 2010

Java - Enviar correo desde Java - JavaMail


"Si usa algún código del siguiente tutorial, den el icono de ME GUSTA del Facebook que se encuentra en su mano derecha, para que se vuelva Seguidor del Blog y también comentenos que tal les pareció el tutorial"

Este ejemplo muestra como enviar un correo desde java utilizando una cuenta de correo Gmail

public static boolean sendMessage(String mensaje,String subject, 
String correo){
        boolean rpta=false;
        Properties props = new Properties();
        // Nombre del host de correo, es smtp.gmail.com
        props.setProperty("mail.smtp.host", "smtp.gmail.com");
        // TLS si está disponible
        props.setProperty("mail.smtp.starttls.enable", "true");
        // Puerto de gmail para envio de correos
        props.setProperty("mail.smtp.port","587");
        // Cuenta de correo en gmail
        props.setProperty("mail.smtp.user", "correo@gmail.com");
        // Si requiere o no usuario y password para conectarse.
        props.setProperty("mail.smtp.auth", "true");
        Session session = Session.getDefaultInstance(props);
        //Verficiar el envio
        session.setDebug(true);
        MimeMessage  message = new MimeMessage(session);
        try {
            message.setSubject(subject);
            message.setText(mensaje);
            Address address = new InternetAddress(dt,"NombrePersona");
            message.setFrom(address);
            //La direccion de la persona a enviar
            Address address2 = new InternetAddress(correo,false);
            message.addRecipient(Message.RecipientType.TO,address2);
            Transport t = session.getTransport("smtp");
            t.connect("correo@gmail.com","clave");
            t.sendMessage(message,message.getAllRecipients());
            t.close();
            rpta=true;
        } catch (MessagingException ex) {
            ex.printStackTrace();
            return rpta;
        } catch (UnsupportedEncodingException ex) {
            ex.printStackTrace();
            return rpta;
        }
        return rpta;
}

Importaciones utilizadas

  • import javax.mail.Address
  • import javax.mail.BodyPart
  • import javax.mail.Message
  • import javax.mail.MessagingException
  • import javax.mail.Multipart
  • import javax.mail.Session
  • import javax.mail.Transport
  • import javax.mail.internet.InternetAddress
  • import javax.mail.internet.MimeBodyPart
  • import javax.mail.internet.MimeMessage
  • import javax.mail.internet.MimeMultipart

3 comentarios:

muy bueno tu codio pero me manda un error en la linea Address address = new InternetAddress(dt,"NombrePersona");
el error q me manda es crear la variable dt.
gracias

saludo.

ya me funciono 100% cree una variable string y listo
(-_-)
gracias de nuevo

A veces la solución es mas sencilla de lo que pensamos =D Y gracias por visitarnos