API Java Mail - Usando o GMailL  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
estevanbc
HelloWorld

Membro desde: 02/05/2008 13:13:57
Mensagens: 20
Offline

Valew cara, vou dar uma olhada
lgweb
Virtual Machine Man
[Avatar]

Membro desde: 03/05/2007 20:59:55
Mensagens: 775
Localização: Maringa-Parana
Offline

Explendido! Funcionou de primeira,parabéns pela iniciativa
[Email] [WWW] [MSN]
gabrielmassote
JavaGuru
[Avatar]

Membro desde: 20/04/2007 17:58:30
Mensagens: 235
Offline

Agradeço a todos...

qualquer dúvida só postar que tentarei ajudar.

Boa notie para todos.

Bacharelado: PUC Minas Poços de Caldas - 2008
Mestrado: Mestrando UFSCar - Atual
Certificações: Sun Certified Java Programmer 6 - 77%

Gabriel Massote Prado

E-mail: gabrielmassote@gmail.com
MSN: gabriel_massote@hotmail.com
[WWW] [MSN]
renatocustodio
JavaGuru
[Avatar]

Membro desde: 04/03/2008 07:21:24
Mensagens: 244
Offline

estevanbc wrote:Tenti rodar o exemplo mas da pau...
javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465;

Mudei para o meu usuario e senha do gmail mas não funciona...

O que seria???


Testa na porta 587.
[WWW]
renatocustodio
JavaGuru
[Avatar]

Membro desde: 04/03/2008 07:21:24
Mensagens: 244
Offline

gewton wrote:existe algum servidor por aí que nao precise de autenticação? só para efeitos de testes.

smtp.uol.com.br (acho que na porta 25 mesmo)

This message was edited 1 time. Last update was at 02/07/2008 07:01:58

[WWW]
ftxavierrio
Smalltalk
[Avatar]

Membro desde: 08/08/2007 18:00:14
Mensagens: 3
Offline

Olá, eu não conheço muito bem essas Mail API, alguém sabe o que eu preciso alterar pra enviar o email no formato html?

Valeu,

[]'s

Fernando Tolentino Xavier
claytoncastelli
HelloWorld

Membro desde: 11/07/2008 11:50:05
Mensagens: 10
Offline

Caso esteja usando proxy tente adicionar ao código:


props.setProperty("proxySet","true");
props.setProperty("socksProxyHost","192.168.155.1");
props.setProperty("socksProxyPort","1080");


Muito bom seu exemplo, no entanto eu esta com problema na execução por causa de proxy.

Isso resolveu meu problema.
gabrielmassote
JavaGuru
[Avatar]

Membro desde: 20/04/2007 17:58:30
Mensagens: 235
Offline

Legal claytoncastelli...

vou adicionar na explicacao la em cima logo que tiver um tempo...
sempre que tiver algo novo vamos adicionando...

obrigado e abracos

Bacharelado: PUC Minas Poços de Caldas - 2008
Mestrado: Mestrando UFSCar - Atual
Certificações: Sun Certified Java Programmer 6 - 77%

Gabriel Massote Prado

E-mail: gabrielmassote@gmail.com
MSN: gabriel_massote@hotmail.com
[WWW] [MSN]
claytoncastelli
HelloWorld

Membro desde: 11/07/2008 11:50:05
Mensagens: 10
Offline

Eu tb nao conheço muito sobre esse assunto.

Eu mudei um pouco o exemplo do nosso amigo, mais algumas coisa que achei na net, e consegui enviar arquivo para o meu e-mail.


package test.mail;
import java.io.File;
import java.util.Properties;

import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.Authenticator;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
public class AttachExample {
public static void main (String args[]) throws Exception
{

Properties props = new Properties();

String from = "meuEmail@gmail.com";
String to = "destinatario@bla.com.br";
String filename = "bla.html";


// Get system properties
final String username = "meuEmail@gmail.com";
final String password = "minhaSenha";

props.setProperty("proxySet","true");
props.setProperty("socksProxyHost","192.168.155.1");
props.setProperty("socksProxyPort","1080");

props.put("mail.transport.protocol", "smtp"); //define protocolo de envio como SMTP
props.put("mail.smtp.starttls.enable","true");
props.put("mail.smtp.host", "smtp.gmail.com"); //server SMTP do GMAIL
props.put("mail.smtp.auth", "true"); //ativa autenticacao
props.put("mail.smtp.user", from); //usuario ou seja, a conta que esta enviando o email (tem que ser do GMAIL)
props.put("mail.debug", "true");
props.put("mail.smtp.port", "465"); //porta
props.put("mail.smtp.socketFactory.port", "465"); //mesma porta para o socket
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");


Session session = Session.getDefaultInstance(props,
new Authenticator(){
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}});

// Define message
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject("Hello JavaMail Attachment");
// Create the message part
BodyPart messageBodyPart = new MimeBodyPart();
// Fill the message
messageBodyPart.setText("Here's the file");
// Create a Multipart
Multipart multipart = new MimeMultipart();
// Add part one
multipart.addBodyPart(messageBodyPart);
// // Part two is attachment // // Create second body part
messageBodyPart = new MimeBodyPart();
// Get the attachment
DataSource source = new FileDataSource(new File("src\\file\\" + filename));
// Set the data handler to the attachment
messageBodyPart.setDataHandler(new DataHandler(source));
// Set the filename
messageBodyPart.setFileName(filename);
// Add part two
multipart.addBodyPart(messageBodyPart);
// Put parts in message
message.setContent(multipart);
// Send the message
Transport.send(message);
}
}
renatocustodio
JavaGuru
[Avatar]

Membro desde: 04/03/2008 07:21:24
Mensagens: 244
Offline

Uma boa alternatica é o uso da commons mail, do grupo Apache e que internamente usa a API do java mail, mas deixa as coisas ridicularmente mais fáceis.

http://commons.apache.org/email/
[WWW]
gabrielmassote
JavaGuru
[Avatar]

Membro desde: 20/04/2007 17:58:30
Mensagens: 235
Offline

Tudo bem renatocustodio?

eu tentei usar a commons mail para enviar para o gmail, nao funfo nao...se alguem conseguir posta ai pq realmente é mto mais facil...

abraco a todos..

vou editar o topico em breve com as opcoes de proxy e arquivo

Bacharelado: PUC Minas Poços de Caldas - 2008
Mestrado: Mestrando UFSCar - Atual
Certificações: Sun Certified Java Programmer 6 - 77%

Gabriel Massote Prado

E-mail: gabrielmassote@gmail.com
MSN: gabriel_massote@hotmail.com
[WWW] [MSN]
renatocustodio
JavaGuru
[Avatar]

Membro desde: 04/03/2008 07:21:24
Mensagens: 244
Offline

Eu tinha em casa até um trabalho de faculdade que fiz usando commons mail que enviava um email e com um boleto feito com a jboleto em anexo para um email de uma pessoa qualquer cadastrada no banco. Depois quando eu estiver em casa eu posto o exemplo da classe que utilizei...

This message was edited 1 time. Last update was at 11/07/2008 15:44:45

[WWW]
gabrielmassote
JavaGuru
[Avatar]

Membro desde: 20/04/2007 17:58:30
Mensagens: 235
Offline

Ok...funcionando a gente cria um novo topoico...

pois mta gente quer utilizar e as vezes nao da certo...

Bacharelado: PUC Minas Poços de Caldas - 2008
Mestrado: Mestrando UFSCar - Atual
Certificações: Sun Certified Java Programmer 6 - 77%

Gabriel Massote Prado

E-mail: gabrielmassote@gmail.com
MSN: gabriel_massote@hotmail.com
[WWW] [MSN]
claytoncastelli
HelloWorld

Membro desde: 11/07/2008 11:50:05
Mensagens: 10
Offline

SimpleEmail email = new SimpleEmail();

try {
email.setDebug(true);
email.setHostName("smtp.gmail.com");
email.setAuthentication("meuEmail@gmail.com","minhaSenha");
email.setSSL(true);
email.addTo("destinatario@bla.com");
email.setFrom("meuEmail@gmail.com");
email.setSubject("Teste");
email.setMsg("Bla...Bla");
email.send();

} catch (EmailException e) {

System.out.println(e.getMessage());

}


Isso foi o que eu precisei fazer para usar a API do jakarta commons.
Os jars que eu adicionei ao meu projeto foram:
javaMail: mail.jar
commons-email-1.1: commons-email-1.1.jar

Tudo funcionou.


Depois eu faço um exemplo com arquivo e mando aqui também, fica realmente mais fácil usando o jakarta-commons.
felipeguerra
Virtual Machine Man

Membro desde: 26/03/2007 16:36:54
Mensagens: 766
Localização: São Paulo
Offline



Eu não consegui enviar, conforme o erro acima diz...

"Antes da iluminação cortar lenha, carregar água. Depois da iluminação cortar lenha, carregar água..."
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team