problemas para enviar mail con jsp

CUTTER
17 de Junio del 2004
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!

CUTTER
17 de Junio del 2004
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.

Seraph
17 de Junio del 2004
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 !! ;)

Martin Cordova
17 de Junio del 2004
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