Problemas com javaMail

3 respostas
J

Gente eu jah to a algum tempo etntando criar uma aplicação q envia e-mail … varias pessoas do fórum já me ajudaram e eu consegui baixar os JARs o java reconheceu os imports … ou seja posso usar o pacote javaMail sem problemas … eu recebi dos colegas do fórum três exemplos mas não ta dando certo … quem puder por favor me explique (algumas perguntas podem parecer óbvias como o que é smtp ou o q é mymail porém aplicadas a esse código por muitas vezes podem não ser tão óbvias para mim :slight_smile:

import javax.mail.;
import javax.mail.internet.
;

import java.util.Properties;

class SimpleMail {

public static void main(String[] args) throws Exception{

Properties props = new Properties();

props.setProperty(mail.transport.protocol, smtp); /* o que é mail.transport.protocol…e o qué é SMTP ? de um exemplo usando o GMail  (unico que eu testei até agora)<em>/

props.setProperty(“mail.host”, “<a href="http://mymail.server.org">mymail.server.org</a>”); /</em> o que é mail.host? e o que é <a href="http://mymail.server.org">mymail.server.org</a> ?? de uma exemplo ultilizandoo GMail

props.setProperty(“mail.user”, “emailuser”); /* o que é mail.user ? exemplo */

props.setProperty(mail.password, “”);/<em>oq é mail.password</em>/
Session mailSession = Session.getDefaultInstance(props, null);
    Transport transport = mailSession.getTransport();

    MimeMessage message = new MimeMessage(mailSession);
    message.setContent("This is a test", "text/plain");
    message.addRecipient(Message.RecipientType.TO,
         new InternetAddress("[email removido]")); /* o q é [email removido]*/

    transport.connect();
    transport.sendMessage(message,
        message.getRecipients(Message.RecipientType.TO));
    transport.close();
    }

}

MUITO OBRIGADO MESMO …
[[[]]]ss

3 Respostas

J

o que é mail.transport.protocol
o que é mail.host?
o que é mail.user ?
oq é mail.password

Um objeto Properties, é baseado em uma chave e um valor, o JavaMail usa alguns nomes (chaves) específicos, que são algo como mail.nome_do_parametro, ex.: mail.transport.protocol (protocolo), mail.user (usuario para conectar-se ao servidor), mail.host (caminho do servidor), mail.password (senha do usuário) etc…

Simple Mail Transfer Protocol, é um protocolo de envio de emails, geralmente a maioria dos servidores de email funcionam com SMTP, portanto, você não precisa mudar isso, a não ser que esteja definido um outro protocolo pelo servidor, mas geralmente não…

É um exemplo de servidor de email, no caso o servidor chama-se mymail.server.org (fictício, claro), no caso do GMail seria smtp.gmail.com, veja as configurações completas em:

http://mail.google.com/support/bin/answer.py?answer=13287&hl=pt_BR

É o email pra onde você está enviando a mensagem, nesse caso você está enviando um email para o Elvis Presley :???:

J

Muito obrigado … eu entendi agora mesmo pra que serve esse monte de protocolos mas
1° o q ta faltando no meu código para que ele funcione???
2° uma das coisas eu sei que tenho que informar é o host … como faço pra saber o “caminho do servidor” que eu estou usando ?

tenho que mudar mais o q pra q ele funcione MESMO?

import javax.mail.;
import javax.mail.internet.
;

import java.util.Properties;

class Teste {

public static void main(String args[]) throws Exception{

Properties props = new Properties();

props.setProperty(mail.transport.protocol, smtp);

props.setProperty(mail.host, <a href="http://smtp.gmail.com">smtp.gmail.com</a>);

props.setProperty(<a>"[email removido]</a>", emailuser);

props.setProperty(senha123, “”);
Session mailSession = Session.getDefaultInstance(props, null);
    Transport transport = mailSession.getTransport();

    MimeMessage message = new MimeMessage(mailSession);
    message.setContent("This is a test", "text/plain");
    message.addRecipient(Message.RecipientType.TO,
         new InternetAddress("[email removido]"));

    transport.connect();
    transport.sendMessage(message,
        message.getRecipients(Message.RecipientType.TO));
    transport.close();
    }

}

valew …

[[[[[[]]]]]]ssssss

J
2° uma das coisas eu sei que tenho que informar é o host ... como faço pra saber o "caminho do servidor" que eu estou usando ?
Você tem que olhar com quem administra o servidor, os grandes provedores de email geralmente tem uma pagina que informa as configurações, como essa do GMail que passei no post anterior, se for usar um servidor SMTP interno de uma empresa, você deve perguntar ao administrador do servidor...
props.setProperty("[email removido]", "emailuser"); props.setProperty("senha123", "");
Não se esqueça que o Properties é um conjunto de CHAVE - VALOR, então o primeiro parametro é a chave, que são predefinidas, e o segundo é o valor da chave, então:
props.setProperty("mail.user", "[email removido]"); props.setProperty("mail.password", "senha123");
import javax.mail.*;
import javax.mail.internet.*;

import java.util.Properties;

class Teste &#123;
   public static void main&#40;String args&#91;&#93;&#41; throws Exception&#123;
      Properties props = new Properties&#40;&#41;;
      props.setProperty&#40;&quot;mail.transport.protocol&quot;, &quot;smtp&quot;&#41;;
      props.setProperty&#40;&quot;mail.host&quot;, &quot;smtp.gmail.com&quot;&#41;;
      props.setProperty&#40;&quot;mail.user&quot;, &quot;[email removido]&quot;&#41;;
      props.setProperty&#40;&quot;mail.password&quot;, &quot;senha123&quot;&#41;;

      Session mailSession = Session.getDefaultInstance&#40;props, null&#41;;
      Transport transport = mailSession.getTransport&#40;&#41;;

      MimeMessage message = new MimeMessage&#40;mailSession&#41;;
      message.setContent&#40;&quot;This is a test&quot;, &quot;text/plain&quot;&#41;;
      message.addRecipient&#40;Message.RecipientType.TO, new InternetAddress&#40;&quot;[email removido]&quot;&#41;&#41;;

      transport.connect&#40;&#41;;
      transport.sendMessage&#40;message,
      message.getRecipients&#40;Message.RecipientType.TO&#41;&#41;;
      transport.close&#40;&#41;;
   &#125;
&#125;
Criado 6 de dezembro de 2006
Ultima resposta 7 de dez. de 2006
Respostas 3
Participantes 2