problemas para enviar mail con jsp
tengo el codigo que esta mas abajo, es para enviar mail con un formulario en JSP. me da este error:
"ERROR, El mensaje para [email protected] Fallo Cua Cuaaa, la razon es: javax.mail.SendFailedException: Sending failed; nested exception is: javax.mail.MessagingException: Unknown SMTP host: mail.irisargentina.com; nested exception is: java.net.UnknownHostException: mail.irisargentina.com "
CODIGO:
<%@ page import="java.util.*, javax.mail.*, javax.mail.internet.*" %>
<html>
<head>
<title>prueba envio mail con JSP pu</title>
</head>
<body bgcolor="#C0C0C0" text="#CC0000" >
<%
if(request.getMethod().equals("POST") )
{
boolean status = true;
// enter here the smtp mail server address
// ask your ISP to get the proper name
String mailServer = request.getParameter("smtp");
String fromEmail = request.getParameter("from");
String toEmail = request.getParameter("to");
String messageEnter = request.getParameter("message");
if(toEmail.equals("") )
toEmail = "unknown";
try
{
Properties props = new Properties();
props.put("mail.smtp.host", mailServer);
Session s = Session.getInstance(props,null);
MimeMessage message = new MimeMessage(s);
InternetAddress from = new InternetAddress(fromEmail);
message.setFrom(from);
InternetAddress to = new InternetAddress(toEmail);
message.addRecipient(Message.RecipientType.TO, to);
message.setSubject("prueba de mail con JSP");
message.setText(messageEnter);
Transport.send(message);
}
catch(NullPointerException n)
{
System.out.println(n.getMessage() );
out.println("ERROR, deve ingresar un mensaje, maldito irisworker!!!");
status = false;
}
catch (Exception e)
{
System.out.println(e.getMessage() );
out.println("ERROR, El mensaje para " + toEmail + " Fallo Cua Cuaaa, la razon es: " + e);
status = false;
}
if (status == true)
{
out.println("Su Mensaje para " + toEmail + " se envio correctamente bla bla HAGGG!");
}
}
else
{
%>
<h1><font color="#000099">Prueba de envio de mail con JSP</font></h1>
<form method="post" name="mail" action="test.jsp">
<table BORDER="0">
<tr>
<td><font color="#000099">Smtp :</font></td>
<td><input type="text" name="smtp" size=24></td>
</tr>
<p>
<tr>
<td><font color="#000099">De :</font></td>
<td><input type="text" name="to" size=24></td>
</tr>
<p>
<tr>
<td><font color="#000099">Para :</font></td>
<td><input type="text" name="from" size=24></td>
</tr>
<p>
<tr>
<td><font color="#000099">Mensaje</font> :</td>
<td><TEXTAREA name="message" ROWS = "5" COLS="65"></TEXTAREA></td>
</tr>
</table>
<p>
<font face="Helvetica">
<input type="submit"
value="Enviar" name="Command">
</font>
</form>
<%
}
%>
</body>
</html>
cualquier idea es bienvenida, haa el smtp que puse es correcto y anda bien.
muchas gracias!
"ERROR, El mensaje para [email protected] Fallo Cua Cuaaa, la razon es: javax.mail.SendFailedException: Sending failed; nested exception is: javax.mail.MessagingException: Unknown SMTP host: mail.irisargentina.com; nested exception is: java.net.UnknownHostException: mail.irisargentina.com "
CODIGO:
<%@ page import="java.util.*, javax.mail.*, javax.mail.internet.*" %>
<html>
<head>
<title>prueba envio mail con JSP pu</title>
</head>
<body bgcolor="#C0C0C0" text="#CC0000" >
<%
if(request.getMethod().equals("POST") )
{
boolean status = true;
// enter here the smtp mail server address
// ask your ISP to get the proper name
String mailServer = request.getParameter("smtp");
String fromEmail = request.getParameter("from");
String toEmail = request.getParameter("to");
String messageEnter = request.getParameter("message");
if(toEmail.equals("") )
toEmail = "unknown";
try
{
Properties props = new Properties();
props.put("mail.smtp.host", mailServer);
Session s = Session.getInstance(props,null);
MimeMessage message = new MimeMessage(s);
InternetAddress from = new InternetAddress(fromEmail);
message.setFrom(from);
InternetAddress to = new InternetAddress(toEmail);
message.addRecipient(Message.RecipientType.TO, to);
message.setSubject("prueba de mail con JSP");
message.setText(messageEnter);
Transport.send(message);
}
catch(NullPointerException n)
{
System.out.println(n.getMessage() );
out.println("ERROR, deve ingresar un mensaje, maldito irisworker!!!");
status = false;
}
catch (Exception e)
{
System.out.println(e.getMessage() );
out.println("ERROR, El mensaje para " + toEmail + " Fallo Cua Cuaaa, la razon es: " + e);
status = false;
}
if (status == true)
{
out.println("Su Mensaje para " + toEmail + " se envio correctamente bla bla HAGGG!");
}
}
else
{
%>
<h1><font color="#000099">Prueba de envio de mail con JSP</font></h1>
<form method="post" name="mail" action="test.jsp">
<table BORDER="0">
<tr>
<td><font color="#000099">Smtp :</font></td>
<td><input type="text" name="smtp" size=24></td>
</tr>
<p>
<tr>
<td><font color="#000099">De :</font></td>
<td><input type="text" name="to" size=24></td>
</tr>
<p>
<tr>
<td><font color="#000099">Para :</font></td>
<td><input type="text" name="from" size=24></td>
</tr>
<p>
<tr>
<td><font color="#000099">Mensaje</font> :</td>
<td><TEXTAREA name="message" ROWS = "5" COLS="65"></TEXTAREA></td>
</tr>
</table>
<p>
<font face="Helvetica">
<input type="submit"
value="Enviar" name="Command">
</font>
</form>
<%
}
%>
</body>
</html>
cualquier idea es bienvenida, haa el smtp que puse es correcto y anda bien.
muchas gracias!
el servidor SMTP funciona con el puerto 25 y funciona bien, pero con el codigo de la pagina da ese error que mande inicialmente, yo no tengo mucha pega en esto del JSP, yo temo que el problema este en esta linea.
<%@ page import="java.util.*, javax.mail.*, javax.mail.internet.*" %>
no termino de entender que es lo que importa aqui, osea donde deven estar esos archivos si es que son archivos o si son librerias que deven estar instaladas en el servidor.
Desde ya muchas gracias.
<%@ page import="java.util.*, javax.mail.*, javax.mail.internet.*" %>
no termino de entender que es lo que importa aqui, osea donde deven estar esos archivos si es que son archivos o si son librerias que deven estar instaladas en el servidor.
Desde ya muchas gracias.
Hola.
Yo tuve un problema similar hace bastante ... la verdad estaba tratando de encontrar el archivo pero ... hum... he cambiado de HD varias veces y en este momento ni idea donde esta.
En fin ... la solucion que encontre es que rectificara que el puerto .. no el SMTP... sino el puerto de salida estuviese bien
Este puerto te lo provee to ISP y usualmente el valor es 25.
Chequea esta direcci贸n ... dicen que funciona... habra que ver.
http://www.jspinsider.com/content/jsp/javamail/jspjavamail_2.jsp
Igualmente, y es mi constumbre, primero hacer las pruebas en Servlet .. ya que pues mi editor de Java me advierte donde se encuentran los errores.
Espero te sirva
___Sayoonara___
PD: Acabo de leer que javax.mail funciona con otra libreria adjunta o algo asi.. para mas informacion
http://java.sun.com/products/javamail/
Te todas maneras me avisas cuando te funcione... y de paso me envias el c贸digo !! ;)
Yo tuve un problema similar hace bastante ... la verdad estaba tratando de encontrar el archivo pero ... hum... he cambiado de HD varias veces y en este momento ni idea donde esta.
En fin ... la solucion que encontre es que rectificara que el puerto .. no el SMTP... sino el puerto de salida estuviese bien
Este puerto te lo provee to ISP y usualmente el valor es 25.
Chequea esta direcci贸n ... dicen que funciona... habra que ver.
http://www.jspinsider.com/content/jsp/javamail/jspjavamail_2.jsp
Igualmente, y es mi constumbre, primero hacer las pruebas en Servlet .. ya que pues mi editor de Java me advierte donde se encuentran los errores.
Espero te sirva
___Sayoonara___
PD: Acabo de leer que javax.mail funciona con otra libreria adjunta o algo asi.. para mas informacion
http://java.sun.com/products/javamail/
Te todas maneras me avisas cuando te funcione... y de paso me envias el c贸digo !! ;)
En principio y a juzgar por el mensaje de error, no parece que tenga que ver con tu codigo sino con la dificultad para resolver el nombre del server a una direccion IP:
Unknown SMTP host: mail.irisargentina.com
Sugiero que trates de ubicar este server usando el utility de linea de comando nslookup o algun otro.
Otra cosa a tener en cuenta es que a veces la entrega de correos falla porque el server destino te rechaza porque no acepta mensajes con direcciones FROM con un dominio invalido, o tu direccion de envio (la IP) esta en una lista de Spammers o cosas asi.
Saludos,
Martin Cordova
-----
Dinamica - J2EE Framework
Free, easy and powerful
http://www.martincordova.com
Unknown SMTP host: mail.irisargentina.com
Sugiero que trates de ubicar este server usando el utility de linea de comando nslookup o algun otro.
Otra cosa a tener en cuenta es que a veces la entrega de correos falla porque el server destino te rechaza porque no acepta mensajes con direcciones FROM con un dominio invalido, o tu direccion de envio (la IP) esta en una lista de Spammers o cosas asi.
Saludos,
Martin Cordova
-----
Dinamica - J2EE Framework
Free, easy and powerful
http://www.martincordova.com
