Existe a possibilidade e eu autenticar com um email senha e smtp, e mandar com outro e-mail?
o setfrom só aceita o e-mail que eu autentico, eu queria enviar do meu proprio e-mail para que eu pudesse fazer um e-mail marketing mesmo sem saber o smtp login e senha dos meus clientes.
Tem como?
Esse problema pode estar ocorrêndo por alguma restrição no servidor de e-mail quanto ao domínio do endereço de e-mail que está configurando, no caso hotmail.com, verifique se existe alguma regra para esse caso.
no mais, segue outro exemplo de envio de e-mail, agrupei tudo em um método só para facilitar o post, mas uma refatoração cai bem aí =D
publicvoidenviaEmail(List<String>destinatarios){finalPropertiesprops=newProperties();/* * CONFIGURAÇÃO DO SERVIDOR DE EMAIL PARA CONEXÃO AO SERVIÇO */props.setProperty("mail.transport.protocol","smtp");props.setProperty("mail.host","IP do servidor de email");props.setProperty("mail.smtp.port","Porta em que o serviço de email está disponível");props.setProperty("mail.mime.charset","utf-8");finalAuthenticatorauth=newAuthenticator(){publicPasswordAuthenticationgetPasswordAuthentication(){returnnewPasswordAuthentication("usuario_servidor","senha_servidor");}};Sessionsession=Session.getInstance(props,auth);finalMessagemsg=newMimeMessage(session);msg.setFrom(newInternetAddress("remetente"));booleanfirst=true;finalInternetAddressinternetAddress=newInternetAddress();/* * A PARTIR DE UMA LISTA DE ENDEREÇOS DE E-MAILS ADICIONA-SE OS DESTINATÁRIOS DA MENSAGEM */for(intcont=0;cont<destinatarios.size();cont++){if(first){internetAddress.setAddress((String)destinatarios.get(cont));msg.addRecipient(Message.RecipientType.TO,internetAddress);first=false;}else{internetAddress.setAddress((String)destinatarios.get(cont));msg.addRecipient(Message.RecipientType.CC,internetAddress);}}/* * MONTA O CORPO DO E-MAIL */msg.setSubject("Aqui o assunto da mensagem");finalMimeBodyPartcorpoDaMensagem=newMimeBodyPart();corpoDaMensagem.setContent("Aqui a o corpo da mensagem que será enviada","aqui os tipos 'text/html' ou 'text/plain'");finalMultipartmps=newMimeMultipart();mps.addBodyPart(corpoDaMensagem);msg.setContent(mps);}
D
denisspitfire
é na kinghost, vou falar com o pessoal de lá pra ver se é este o problema. as vezes nao posso mandar um e-mail de la com um e-mail “que nao seja meu”
B
Big_E
Outra coisa…notei pela exceção que está abrindo uma conexão com um protocolo TLS de segurança, certifique-se também se o servidor de e-mail suporta conexões desse tipo.
TLS, caso não saiba, é uma camada de segurança para envio de informações pela rede.
tente nas propriedades da conexão setar false para não iniciar a conexão com protocolo tls
No exemplo que enviei ficaria assim:
/**CONFIGURAÇÃODOSERVIDORDEEMAILPARACONEXÃOAOSERVIÇO*/props.setProperty("mail.transport.protocol","smtp");props.setProperty("mail.host","IP do servidor de email");props.setProperty("mail.smtp.port","Porta em que o serviço de email está disponível");props;setProperty("mail.smtp.starttls.enable","false");props.setProperty("mail.mime.charset","utf-8");
Verifique a propriedade TLS como citei, no último post.
D
denisspitfire
se eu colocar TLS false ele da um erro de que não foi permitido por eu ter colocado false no TLS
D
denisspitfire
vamos lá… parece que da problema mesmo na king host, mas oque eu fiquei curioso é…
no hotmail funciona!
porem… mesmo funcionando ele ainda manda pelo e-mail que eu autentiquei… mesmo trocando o setFrom ele ainda envia pelo e-mail autenticado. O.o