enviar correo desde tomcat
tengo el siguiente problema tengo como servidor web tomcat
y tengo un servlet que m envia un correo al servidor de correo de
pero tengo el sugiente problema
con el codigo, pues me sale el siguiente error
pero en el props.put("mail.smtp.host", host) , cual es el host, ¿is es localhost? ,
si uso localhost me sale
javax.mail.SendFailedException: Sending failed;
nested exception is:
javax.mail.MessagingException: Could not connect to SMTP
host: localhost, port: 25
pues lo estoy enviando desde localhost
el codigo es este:
String from ="[email protected]"
String to = "emerson@ yahoo.es";
String subject = request.getParameter("subject");
String texto = request.getParameter("texto");
Properties props = new Properties();
props.put("mail.smtp.host", "localhost");
Session ses = Session.getInstance(props, null);
Address addressFrom =new InternetAddress(from);
Address addressTo =new InternetAddress(to);
MimeMessage message = new MimeMessage(ses);
message.setContent(texto, "text/html");
message.setSubject(subject);
message.setFrom(addressFrom);
message.addRecipient(Message.RecipientType.TO, addressTo);
Transport.send(message);
y tengo un servlet que m envia un correo al servidor de correo de
pero tengo el sugiente problema
con el codigo, pues me sale el siguiente error
pero en el props.put("mail.smtp.host", host) , cual es el host, ¿is es localhost? ,
si uso localhost me sale
javax.mail.SendFailedException: Sending failed;
nested exception is:
javax.mail.MessagingException: Could not connect to SMTP
host: localhost, port: 25
pues lo estoy enviando desde localhost
el codigo es este:
String from ="[email protected]"
String to = "emerson@ yahoo.es";
String subject = request.getParameter("subject");
String texto = request.getParameter("texto");
Properties props = new Properties();
props.put("mail.smtp.host", "localhost");
Session ses = Session.getInstance(props, null);
Address addressFrom =new InternetAddress(from);
Address addressTo =new InternetAddress(to);
MimeMessage message = new MimeMessage(ses);
message.setContent(texto, "text/html");
message.setSubject(subject);
message.setFrom(addressFrom);
message.addRecipient(Message.RecipientType.TO, addressTo);
Transport.send(message);
Necesitas una implementación de servidor de salida.
El envío de correo funciona de modo que un cliente (y eso es lo que es el código que has descrito, un cliente que envía un mensaje) envía un servidor SMTP (Simple Mail Transfer Protocol) comandos para enviar un email.
Javamail te permite "abstraerte" de la "conversación" que se ha de mantener a nivel de Sockets (conexiones) con el servidor SMTP, de modoq ue puedes, en cinco o seis líneas de código, dar instrucciones precisas al servidor SMTP para que envíe el correo que quieres donde quieres.
Esto no implica que no necesites ese servidor SMTP. Sólo con Tomcat no es posible... necesitas o bien la implementación propietaria de IIS si estás en Windows (o algun servidor gratuito, que alguno habrá) o para Linux, sendmail o su primo pequeño, postfix.
Java tiene "per se" una implementación de referencia de servidor de correo. Se llama James, y es un proyecto de Jakarta (jakarta.apache.org).
Échale un vistazo y nos cuentas qué tal.
Un saludo, feliz 2005
Ken
El envío de correo funciona de modo que un cliente (y eso es lo que es el código que has descrito, un cliente que envía un mensaje) envía un servidor SMTP (Simple Mail Transfer Protocol) comandos para enviar un email.
Javamail te permite "abstraerte" de la "conversación" que se ha de mantener a nivel de Sockets (conexiones) con el servidor SMTP, de modoq ue puedes, en cinco o seis líneas de código, dar instrucciones precisas al servidor SMTP para que envíe el correo que quieres donde quieres.
Esto no implica que no necesites ese servidor SMTP. Sólo con Tomcat no es posible... necesitas o bien la implementación propietaria de IIS si estás en Windows (o algun servidor gratuito, que alguno habrá) o para Linux, sendmail o su primo pequeño, postfix.
Java tiene "per se" una implementación de referencia de servidor de correo. Se llama James, y es un proyecto de Jakarta (jakarta.apache.org).
Échale un vistazo y nos cuentas qué tal.
Un saludo, feliz 2005
Ken
Hola queria preguntar si alguien sabe el problema que tiene el siguiente codigo.
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;
public class MailExample {
public static void main (String args[]) throws Exception {
if (args.length != 3) {
System.err.println("Usage: java MailExample host from to");
System.exit(-1);
}
String host = args[0];
String from = args[1];
String to = args[2];
// Get system properties
Properties props = System.getProperties();
// Determina el servidor de correo
props.put("mail.smtp.host", host);
// Obtiene la sesión
Session session = Session.getDefaultInstance(props, null);
// Define el mensaje
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to));
message.setSubject("The Subject");
message.setText("The Message");
// Envía el mensaje
Transport.send(message);
}
}
Porque es que no me esta enviando mail
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;
public class MailExample {
public static void main (String args[]) throws Exception {
if (args.length != 3) {
System.err.println("Usage: java MailExample host from to");
System.exit(-1);
}
String host = args[0];
String from = args[1];
String to = args[2];
// Get system properties
Properties props = System.getProperties();
// Determina el servidor de correo
props.put("mail.smtp.host", host);
// Obtiene la sesión
Session session = Session.getDefaultInstance(props, null);
// Define el mensaje
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to));
message.setSubject("The Subject");
message.setText("The Message");
// Envía el mensaje
Transport.send(message);
}
}
Porque es que no me esta enviando mail
