[Resolvido]Porque este código não envia email?

Properties props = new Properties();
props.put(“mail.smtp.host”, “smtp.yahoo.com.br”);

Quero mandar um email para um endereço do yahoo.

Como assim “configurar” ?

dê uma olhada na api javamail: http://www.google.com.br/search?hl=pt-BR&q=java+mail+api&btnG=Pesquisa+Google&meta=

[quote=g4j]Como assim “configurar” ?

dê uma olhada na api javamail: http://www.google.com.br/search?hl=pt-BR&q=java+mail+api&btnG=Pesquisa+Google&meta=[/quote]

Nesta linha dá um erro eu não estou sabendo quais os parâmetros eu devo passar para poder enviar o email para o endereço correto.

props.put("mail.smtp.host", "smtp.yahoo.com.br");

Erro:

init:
deps-jar:
compile:
run:
envio falhou, exception: javax.mail.MessagingException: Unknown SMTP host: smtp.yahoo.com.br;
  nested exception is:
        java.net.UnknownHostException: smtp.yahoo.com.br

Tenta usar o smtp.mail.yahoo.com.br

erro de smtp desconhecido, pode ser por problema com seu provedor de internet, ai você tem que usar o smtp do seu provedor…

mais informações em: http://www.google.com.br/search?hl=pt-BR&q=smtp+yahoo&btnG=Pesquisa+Google&meta=

Este é o método que estou usando.

public static void enviando(){
        Properties props = new Properties();
        props.put("mail.smtp.host", "smtp.mail.yahoo.com.br");
        
        props.put("mail.from", "orgiem@yahoo.com.br");
        Session session = Session.getInstance(props, null);

        try {
            MimeMessage msg = new MimeMessage(session);
            msg.setFrom();
            msg.setRecipients(Message.RecipientType.TO,
                              "destino@yahoo.com.br");
            msg.setSubject("JavaMail hello world example");
            msg.setSentDate(new Date());
            msg.setText("Hello, world!\n");
            Transport.send(msg);
        } catch (MessagingException mex) {
            System.out.println("envio falhou, exception: " + mex);
        }

    }

Erro:

init:
deps-jar:
compile:
run:
envio falhou, exception: javax.mail.MessagingException: Can't send command to SMTP host;
  nested exception is:
        java.net.SocketException: Connection reset by peer: socket write error

Fiz algumas modificações no código, agora não dá erro algum só que o email não é enviado…

public static void enviando() throws AddressException{
        InternetAddress addressFrom = new InternetAddress("origem@yahoo.com.br");
        Address vai[] = new InternetAddress[1];
        
        Properties props = new Properties();
        props.put("mail.smtp.host", "smtp.meuprovedor.com.br");
        props.put("mail.pop.host", "pop.meuprovedor.com.br");
        
        props.put("mail.from", "destino@ig.com.br");
        Session session = Session.getInstance(props, null);

        try {
            MimeMessage msg = new MimeMessage(session);
            msg.setFrom();;
            msg.setRecipients(Message.RecipientType.TO, vai);
            msg.setSubject("JavaMail hello world example");
            msg.setSentDate(new Date());
            msg.setText("Hello, world!\n");
            Transport.send(msg);
        } catch (MessagingException mex) {
            System.out.println("envio falhou, exception: " + mex);
        }

    }

.

Já tentei de tudo quanto é jeito, já descobri até a porta do meu provedor de email mas nada…

xxxxx.s@r#$@!%s.com.br/25
(estou mantendo a integridade do meu provedor, por isso tá tudo zuado assim)

Da uma olhada nesse thread sobre gmail…

Enviando email pelo gmail

[quote=correainfo]Da uma olhada nesse thread sobre gmail…

Enviando email pelo gmail[/quote]

PERFEITO!!!

ERA ISSO MESMO QUE EU PROCURAVA!!!

OBRIGADO CORREAINFO!!

Ele só funciona com o Gmail, mas é porque não devo estar sabendo qual porta meu provedor trabalha direito ou se é o email do Yahoo que tem uma proteção

Pode ser preciso autenticar com um email/senha válidos no yahoo…

Mais sobre autenticação

AQUI

e

AQUI

Nesse código que tem o link acima a porta que o Gmail trabalha é a 465, e a do Yahoo alguém sabe qual é?