Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rodolfo TI

Enviando emails com Java, não conecta ao SMTP

Recommended Posts

Olá pessoal, não consigo enviar email pelo java, aparentemente mesmo colocando o servidor que deve ser enviado ele assume localhost como servidor de email:

 

Alguem já passou por isso ?

 

 
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.activation.*;
import javax.mail.*;
public class sendMail {
 public static void main(String[] args) {
  // Recipient's email ID needs to be mentioned.
  String to = "jose.joao@meusmtp.com";
  // Sender's email ID needs to be mentioned
  String from = "naoresponde@meusmtp.com";
  // Assuming you are sending email from localhost
  String host = "meu.smtp.com";
  // Get system properties
  Properties properties = System.getProperties();
  // Setup mail server
  properties.setProperty("meu.smtp.com", host);
  // Get the default Session object.
  Session session = Session.getDefaultInstance(properties);
  try {
   // Create a default MimeMessage object.
   MimeMessage message = new MimeMessage(session);
   // Set From: header field of the header.
   message.setFrom(new InternetAddress(from));
   // Set To: header field of the header.
   message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
   // Set Subject: header field
   message.setSubject("This is the Subject Line!");
   // Now set the actual message
   message.setText("This is actual message");
   // Send message
   Transport.send(message);
   System.out.println("Sent message successfully....");
  } catch (MessagingException mex) {
   mex.printStackTrace();
  }
 }
}

 

Desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui resolver, em uma busca pela internet achei um método que fazia o que precisava:

 

import java.util.Date;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.activation.*;

public class EnviaEmail {

    /**
     * @param args the command line arguments
     */
     public static void main(String[] args) throws MessagingException {
        String host = "SMTP";
        String to = "destino";
        String from = "ORIGEM";
        String subject = "ASSUNTO";
        String messageText = "MENSAGEM";

        Properties props = System.getProperties();
        props.put("mail.host", host);
        props.put("mail.transport.protocol", "smtp");
        props.put("mail.smtp.port", "25");

        // If using authentication, otherwise comment out
        props.put("mail.smtp.auth", "t");

        // Gmail requires TLS, your server may not
        props.put("mail.smtp.starttls.enable", "true");

        Session mailSession = Session.getDefaultInstance(props, null);

        Message msg = new MimeMessage(mailSession);
        msg.setFrom(new InternetAddress(from));
        InternetAddress[] address = {new InternetAddress(to)};
        msg.setRecipients(Message.RecipientType.TO, address);
        msg.setSubject(subject);
        msg.setSentDate(new Date());
        msg.setText(messageText);

        Transport transport = mailSession.getTransport("smtp");

        //connect with authentication
        //transport.connect(host,"myUsername" , "myPassword");
 
        //connect without authentication
        transport.connect();
        transport.sendMessage(msg, address);

        transport.close();

        System.out.println("Mail was sent to " + to);
        System.out.println(" from " + from);
        System.out.println(" using host " + host + ".");
        
        
        

    }
} 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.