GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Pagina de contatos?como mandar um email?


#1

fiz uma pagina de contatos onde mando os dados serem gravado em um banco de dados... como faco para mandar um e-mail depois disso???

ou se tem outro jeito!!!

fernando


#2

Utilize o pacote javax.mail

http://java.sun.com/javaee/5/docs/api/javax/mail/package-summary.html


#3

Tem um tutorial do Paulo excelente aqui no GUJ!

Usei ele ontem e foi só dar um CTRL+C - CTRL+V

quer dizer, quase isso, pq no exemplo dele não usava autenticação e eu tive que usar, mas mudou pouca coisa, se precisar eu te mando como faz pra mandar e-mail tendo que autenticar o usuário.


#4

cara se vc puder me ajudar nisso ficaria muito grato contigo...

tentei esse codigo aqui:

Properties props = new Properties();
  props.put("pop.mastersd.net", "smtp.mastersd.net");
  Session s = Session.getInstance(props,null);
  MimeMessage message = new MimeMessage(s);
  InternetAddress from = new InternetAddress("fernandobecker@mastersd.net");
  message.setFrom(from);
  InternetAddress to = new InternetAddress("febeckers@hotmail.com");
  message.addRecipient(Message.RecipientType.TO, to);  
  message.setSubject("E-Mail enviado a partir do JavaMail.");
  message.setText("Este é o texto da mensagem enviada através do JavaMail!");
  Transport.send(message);

mas ta me retornando uma erro nessa linha:

MimeMessage message = new MimeMessage(s);

meu MSN: febeckers@hotmail e SKIPE: febeckers

se vc pouder me ajudar ou me indicar esse tutorial... eu ficaria muito feliz... hehe


#5

Qual exception que ele retorna?


#6

esse aqui:

exception
org.apache.jasper.JasperException: Exception in JSP: /Contato.jsp:139
136:   Properties props = new Properties();
137:   props.put("pop.mastersd.net", "smtp.mastersd.net");
138:   Session s = Session.getInstance(props,null);
139:   MimeMessage message = new MimeMessage(s);
140:   InternetAddress from = new InternetAddress("fernandobecker@mastersd.net");
141:   message.setFrom(from);
142:   InternetAddress to = new InternetAddress("febeckers@hotmail.com");
Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
javax.servlet.ServletException: javax/activation/DataSource
	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
	org.apache.jsp.Contato_jsp._jspService(Contato_jsp.java:225)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.lang.NoClassDefFoundError: javax/activation/DataSource
	org.apache.jsp.Contato_jsp._jspService(Contato_jsp.java:204)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

#7

Tens como libs o JavaMail e o JAF?

Até!


#8

cara tem um jar mail so seria isso???
se nao for onde baixo as certas pois procurei por java mail e achei apenas um arquivo zipado... java mail 1.4...


#9

O tutorial é este aqui: http://www.guj.com.br/java.tutorial.artigo.21.1.guj

Pelo seu erro parece que vc não importou o mail.jar. Você colocou ele na sua pasta lib?


#10

Vc esta utilizando javax.activation.DataSource por qual motivo?
Ele não achou essa classe javax.activation.DataSource , faltou a biblioteca mail.jar na lib do seu projeto


#11

baixei as duas biblioteacas, mail.jar e jaf

me deu o seguinte erro:

exception
org.apache.jasper.JasperException: Could not connect to SMTP host: localhost, port: 25
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
javax.servlet.ServletException: Could not connect to SMTP host: localhost, port: 25
	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
	org.apache.jsp.Contato_jsp._jspService(Contato_jsp.java:225)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25;
  nested exception is:
	java.net.ConnectException: Connection refused: connect
	com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1282)
	com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:370)
	javax.mail.Service.connect(Service.java:275)
	javax.mail.Service.connect(Service.java:156)
	javax.mail.Service.connect(Service.java:105)
	javax.mail.Transport.send0(Transport.java:168)
	javax.mail.Transport.send(Transport.java:98)
	org.apache.jsp.Contato_jsp._jspService(Contato_jsp.java:211)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

#12

tche!!! nao te entendi... eu to tentando fazer... com a juda de vcs... esse codigo veio na documentacao do java mail...


#13

Uma pergunta meio boba, mas tens um servidor de email em sua máquina? Por exemplo o sendmail.

Até!


#14

aos trancos e barrancos eu vo indo...

deu esse erro:

Invalid Addresses

endereco invalidao seria isso

mas qual endereco??


#15

Se o seu servidor de e-mail estiver de pé, então é provável que vc precise criar uma conexão autenticada para conseguir mandar o e-mail.

Se for isso, pra mandar e-mail vc precisa desse código:

                Transport tr = _mailSession.getTransport("smtp");
                tr.connect(_mailhost, _mailuser, password);
                msg.saveChanges();
                tr.sendMessage(msg, msg.getAllRecipients());
                tr.close();

e precisa adicionar essas duas linhas no seu properties:

            p.put("mail.user", _mailuser);
            p.put("mail.smtp.auth", "true");

#16

outlook serve configurado como padrao smtp.mastersd.net, seria isso?

te mais


#17

Não!! hehehe

mas na verdade esquece essa pergunta, pq vc tah se conectando em um servidor de e-mail..não tah usando um servidor local próprio...


#18

ta blz...e o que seria o erro: Invalid Addresses


#19

endereço invalido!! o endereço existe mesmo?


#20

pois entao e isso que esou perguntando... qual endereço???

de quem ta mandando de quem recebe ou o meu smtp???