Saudações! :twisted:
Gostaria de saber se existe em JSP alguma coisa como a função mail do php?..
algo como mail(TO,subject, message, header)
como faço isso no JSP ou em Java???
muito obirgado pela ajuda!!
Victor
Saudações! :twisted:
Gostaria de saber se existe em JSP alguma coisa como a função mail do php?..
algo como mail(TO,subject, message, header)
como faço isso no JSP ou em Java???
muito obirgado pela ajuda!!
Victor
Victor,
Você pode usar uma classe e uma página JSP como estou lhe enviando, ou então criar uma TAGLIB, para envio de e-mail.
Abraços, Luis
CLASSE:
/*
import java.util.StringTokenizer;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.SendFailedException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class SendMail {
static String smtpHost = null;
/**
* Constructor
*/
public SendMail() {
smtpHost = “192.168.0.1”; // endereço IP do seu servidor de e-mail
}
/**
* Envia uma mensagem de texto para um endereço de email
* @param from remetente da mensagem
* @param to destinatário da mensagem, podendo ter e-mails separados por ponto e virgula
* @param subject assunto da mensagem
* @param text texto da mensagem
* @exception AddressException caso o endereço de destino não seja válido
* @exception SendFailedException caso o envio falhe
* @exception MessagingException caso ocorra algum outro tipo de erro
*
*/
public boolean sendText(String from, String to, String subject, String text) {
return sendText(from,to,null,null,subject,text);
}
/**
* Envia uma mensagem de texto para um endereço de email
* @param from remetente da mensagem
* @param to destinatário da mensagem, podendo ter e-mails separados por ponto e virgula
@param cc carbon copy, podendo ter e-mails separados por ponto e virgula
@param bcc bondery carbon copy, podendo ter e-mails separados por ponto e virgula
*/
public boolean sendText(String from, String to,String cc,String bcc, String subject, String text) {
boolean result = false;
String errMsg = null;
try {
//Create the Java Mail session
java.util.Properties properties = System.getProperties();
if(SendMail.smtpHost != null) {
properties.put(“mail.smtp.host”, SendMail.smtpHost);
Session session = Session.getDefaultInstance(properties, null);
// construct the message
Message message = new MimeMessage(session);
message.setContent(text.toString(), "text/plain");
message.setHeader(“Content-Transfer-Encoding”,“binary”);
message.setHeader(“MIME-Version”,“1.0”);
if (from != null || !from.equals("")) {
message.setFrom(new InternetAddress(from));
}
else {
message.setFrom();
}
//Set the to address
String[] _to;
String[] _cc;
String[] _bcc;
int n = 0;
StringTokenizer st = new StringTokenizer(to,";");
_to = new String[st.countTokens()];
while (st.hasMoreTokens()) {
_to[n++] = (st.nextToken());
}
for (int i = 0 ; i < _to.length ; i++) {
message.addRecipient(Message.RecipientType.TO, new InternetAddress(_to[i]));
}
if(cc!=null)
{
n = 0;
st = new StringTokenizer(cc,";");
_cc = new String[st.countTokens()];
while (st.hasMoreTokens()) {
_cc[n++] = (st.nextToken());
}
for (int i = 0 ; i < _cc.length ; i++) {
message.addRecipient(Message.RecipientType.CC, new InternetAddress(_cc[i]));
}
}
if(bcc!=null)
{
n = 0;
st = new StringTokenizer(bcc,";");
_bcc = new String[st.countTokens()];
while (st.hasMoreTokens()) {
_bcc[n++] = (st.nextToken());
}
for (int i = 0 ; i < _bcc.length ; i++) {
message.addRecipient(Message.RecipientType.BCC, new InternetAddress(_bcc[i]));
}
}
message.setSubject(subject);
//Envia email como texto
//message.setHeader("X-Mailer", mailer);
message.setSentDate(new java.util.Date());
// send the thing off
Transport.send(message);
result = true;
}
}
catch(AddressException e) {
System.err.println(“Erro no parsing do endereço.” + e.toString());
errMsg = e.getMessage();
}
catch(SendFailedException e) {
System.err.println(“Erro no envio da mensagem.” + e.toString());
errMsg = e.getMessage();
}
catch(MessagingException e) {
System.err.println(“Erro inesperado.” + e.toString());
errMsg = e.getMessage();
}
catch(Exception e) {
System.err.println(“Erro de sistema.” + e.toString());
errMsg = e.getMessage();
} finally{
if (errMsg != null){
throw new RuntimeException(“Falha de envio de email: \n”+errMsg);
}
}
return result;
}
public static void main(String[] args)
{
SendMail email = new SendMail();
email.sendText(“dequem@servidor.com.br”,“paraquem@outroservidor.com.br”,null,null,“Assunto”,“Corpo da mensagem”);
}
}
JSP:
<%@ taglib uri=“http://xmlns.oracle.com/j2ee/jsp/tld/ojsp/email.tld” prefix=“email” %>
<%@ page contentType=“text/html;charset=windows-1252”%>
<jsp:useBean id=“email” class=“br.com.javasoft.email.SendMail” />
<html>
<head>
<meta http-equiv=“Content-Type” content=“text/html; charset=windows-1252”>
<title>
Envio de e-mail
</title>
</head>
<% if(resultado){ %>
<h2>
e-mail enviado com sucesso !
</h2>
<% }else{ %>
<h2>
Problemas no envio do e-mail
</h2>
<% } %>
Você já instalou o Tomcat?
De uma olhada nos exemplos que acompanham ele