1. Home
  2. Hospedagem de Sites
  3. Enviar email via DataSource JNDI

Enviar email via DataSource JNDI

Para enviar emails através de um DataSource, abra um chamado solicitando a criação do DataSource – mail/Session.

Segue exemplo de uma classe para envio:

Arquivo: Mail.java

import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.naming.*;
 
public class ExemploMail extends HttpServlet {
 
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
 
PrintWriter out = res.getWriter();
res.setContentType("text/html");
try {
 
String to = req.getParameter("to");
 
String from = "teste@dominio.com.br";
 
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
Session session = (Session) envCtx.lookup("mail/Session");
 
MimeMessage message = new MimeMessage(session);
 
message.setFrom(new InternetAddress(from));
Address toAddress = new InternetAddress(to);
message.addRecipient(Message.RecipientType.TO, toAddress);
 
message.setSubject("teste de envio de e-mails");
 
message.setContent("este eh um teste de envio", "text/plain");
 
Transport.send(message);
 
out.println("E-mail enviado");
}
catch (MessagingException e) {
out.println("Email nao pode ser enviado! " + e.getMessage());
}
catch (NamingException e) {
out.println("Sessao nao encontrada via JNDI " + e.getMessage());
}
}
}

Compile o código e acesse:

http://www.dominio.com.br/servlet/ExemploMail?to=meuemail@dominio.com.br

Disponibilizamos de forma global no servidor as bibliotecas mail.jar e activation.jar necessárias para funcionamento do javamail. Não coloque as bibliotecas em sua área de hospedagem, pois podem gerar conflitos não funcionando o envio de e-mails.

Atualizado em 30 de janeiro de 2019

Este artigo foi útil ?

Artigos relacionados