Saltar al contenido

Java Mail API: envíe correos electrónicos a través de una cuenta corporativa de Outlook

Siéntete libre de compartir nuestro sitio y códigos en tus redes, apóyanos para hacer crecer nuestra comunidad.

Solución:

necesitas descargar javax.mail TARRO primero. Luego prueba el siguiente código:

import java.io.IOException;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class SendMail 

    public static void main(String[]args) throws IOException 

        final String username = "enter your username";
        final String password = "enter your password";

        Properties props = new Properties();
        props.put("mail.smtp.auth", "true");
        props.put("mail.smtp.starttls.enable", "true");
        props.put("mail.smtp.host", "outlook.office365.com");
        props.put("mail.smtp.port", "587");

        Session session = Session.getInstance(props,
          new javax.mail.Authenticator() 
            protected PasswordAuthentication getPasswordAuthentication() 
                return new PasswordAuthentication(username, password);
            
          );

        try 

            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress("enter your outlook mail address"));
            message.setRecipients(Message.RecipientType.TO,
                InternetAddress.parse("Enter the recipient mail address"));
            message.setSubject("Test");
            message.setText("HI");

            Transport.send(message);

            System.out.println("Done");

         catch (MessagingException e) 
            throw new RuntimeException(e);
        
    

Todo lo que necesita es la configuración de SMTP para su cuenta corporativa. Configúrelos en su programa usando la API de correo de Java y eso es todo. p.ej

Properties props = System.getProperties();
props.put("mail.smtp.host", "your server here");
Session session = Session.getDefaultInstance(props, null);

ejemplo: aquí y aquí

probé con outlook.office365.com como nombre de host y obtuvo authentication unaccepted exception. Al intentar con smtp-mail.outlook.com
Puedo enviar correos a través de Outlook con Javamail API.

Para obtener más detalles, consulte la configuración de Outlook en el sitio oficial de Outlook.

Para obtener un código de demostración completo, lea esta respuesta.

Reseñas y valoraciones de la guía

Recuerda algo, que te concedemos aclarar tu experiencia .

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *