Java - Ayuda ENVIAR EMAIL

 
Vista:

Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 15/05/2007 16:28:29
Buenas tardes.
Escribo de nuevo porque hace un par de días escribí un post y no he recibido respuesta alguna.
Necesito saber si con Javascript es posible enviar emails a una direccion de correo. Estoy haciendo una aplicación y he realizado una página para que si el usuario no se acuerda de su contraseña le de a recordar contraseña y entonces mi aplicación envíe un email a la dirección que el usuario ingrese.
Lo que ocurre es que cuando le doy a enviar, me sale una alerta diciendo que un programa desconocido intenta enviar un email, yo le doy a permitir, pero nunca llega el email y ya he probrado un monton de veces.
Quisiera alguna sugerencia por favor. Gracias.

PD: No quiero que para enviar el email se abra Microsoft Outlook o algo similar, simplemente quiero que se envíe el email a la dirección solicitada.Gracias de nuevo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda ENVIAR EMAIL

Publicado por Mario (622 intervenciones) el 15/05/2007 16:43:39
cita "Escribo de nuevo porque hace un par de días escribí un post y no he recibido respuesta alguna. "

Debes de ser un poco más tolerante y no escribir este tipo de post porque provocas que las personas se molesten porque se piensa que eres la única que tiene una dificultad....

ahora respecto a tu pregunta, no es posible enviar correos usando Javascript a menos que uses el cliente Lotus Notes o Outlook, si quieres enviar un correo sin un cliente necesitas usar la Api Java Mail, esta api es muy sencilla solo tienes que colocar el nombre del servidor SMTP, las direcciones de correo y otras cosillas, existe un proyecto en Jakarta que se llama Commons email es una API mucho mas amigable que Java Mail te la puedo recomendar apliamente.

Saludos comunidad open source
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 15/05/2007 17:18:56
Lo siento, no era mi intención.
Gracias de todas formas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Consultoriajava (59 intervenciones) el 15/05/2007 17:46:23
Seguramente puedas enviar tus correos al servidor mediante ajax (ojo, que una cosa es que sea viable y otra que sea recomendable), por ejemplo Gmail usa una funcionalidad parecida a la que tu deseas.

Una vez en el servidor ya usas lo que te de la gana para enviar el mail, pero en origen tienes javascript y el usuario del navegador no tiene que cambiar de ventana.

Respuesta proporcionada por <a href="http://www.consultoriajava.com">expertos en java </a>de Consultoriajava.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mario (622 intervenciones) el 15/05/2007 21:30:28
Estoy deacuerdo con los consultores =) Ajax puede ser una buena opción.

Saludos!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

DWR

Publicado por Mercedes (125 intervenciones) el 16/05/2007 16:57:06
Hola de nuevo.
Estoy documentandome acerca de DWR, pues he leído que es una biblioteca AJAX, especialmente para JAVA. ¿Alguna sugerencia? ¿Puede ser apropiada para utilizar con Struts?
Quisiera ver también algún ejemplo antes de empezar acerca de cómo enviar emails.
Gracias
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:DWR

Publicado por Gonzalo (180 intervenciones) el 16/05/2007 17:31:47
En cuanto al tema de enviar correos, lee mi otro mensaje antes.

Si de todos modos quieres seguir con la idea de usar DWR, adelante. En la propia página de DWR tienen algún comentario sobre cómo usarlo con Struts:
http://getahead.org/dwr/server/struts
No dice mucho, pero se puede hacer sin problema. Si vas a algún buscador seguro que encuentras más de un ejemplo de cómo hacerlo.

Por otro lado, también hay por ahí bastantes ejemplos de cómo añadir AJAX a Struts (sin necesidad de DWR).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Gonzalo (180 intervenciones) el 16/05/2007 17:26:19
Vamos poco a poco...

Supongo que cuando dices "Enviar correos con Javascript" te refieres a enviarlos directamente desde una página web, sin más (sin usar un cliente de correo en el ordenador del usuario ni nada). Esto, de entrada no, no es posible.

Sí puedes enviar correos en tu aplicación hecha con Struts desde el servidor. Es decir, en la página se rellenan los datos que sean necesarios, o se pulsa el botón que sea apropiado. Eso se envía a una acción de Struts y es esa acción la que enviará el mail o llamará a lo que sea necesario para enviar el mail.

Añadirle AJAX a esto es posible, pero no es necesario ni te soluciona ningún problema en particular. Es decir, sigues teniendo que hacer en el servidor la acción que será la que envíe el correo.
Lo que "ConsultoriaJava" dice de "Una vez en el servidor ya usas lo que te de la gana para enviar el mail" entiendo que es precisamente el problema que quieres resolver: qué usar y cómo para enviar correos.

(Ojo, que llevo usando AJAX mucho tiempo y no estoy diciendo que sea malo ni nada. Lo que digo es que no sirve para resolver ese problema concreto.)


Si quieres enviar correos, el primer mensaje de "Mario" es lo que debes leer. Lo que necesitas es el Java Mail API (o mejor Commons Email http://jakarta.apache.org/commons/email/ que te da muchas cosas resueltas).

Además, **también** necesitas un servidor de correo saliente. Servidores SMTP tienes varios. Hay uno hecho en Java que se llama James ( http://james.apache.org/ ) pero si es para probar en tu máquina y usas Windows, yo te recomendaría Mercury ( http://www.pmail.com/overviews/ovw_mercury.htm ) porque es más sencillo de configurar. Si usas alguna variedad de Linux / Unix / BSD, puedes usar sendmail sin problema que seguramente ya lo tendrás instalado en tu sistema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 16/05/2007 17:39:21
Puff... recapitulo un poco...

Exacto, yo lo que quiero como bien dices es enviar un email directamente desde una página web; el usuario introduce su correo en un campo texto y se envía a su correo una contraseña.

Por otro lado, me estoy haciendo un lío.... Yo nueva en esto y no consigo aclararme. En principio como es algo bastante sencillo, tampoco quiero complicarme demasiado la vida.

En cuanto a DWR y a AJAX, yo creía que no era necesaria enviar ninguna acción a Struts. Y por ello iba a utilizarlo, pero ahora...

Por otro lado, ayer probé una jsp que me dieron en un master que he realizado para enviar emails, pero claro eso del servidor SMPT me fallaba.

Entonces, ¿que es lo más conveniente?. Sinceramente como no tengo ni idea necesito que me des tu opinión, si no te importa.

Gracias de nuevo.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Gonzalo (180 intervenciones) el 16/05/2007 19:28:16
Bueno, vamos a ver.

Lo que quería decir es que tienes más o menos este esquema (a ver cómo sale xD):

[ Navegador ] <--------> [ Servidor ] <-----------> ( Servidor de correo... )

En el Navegador tienes: HTML y Javascript.
En el Servidor (típicamente Apache Tomcat) es donde tienes tu aplicación Java con sus JSPs, sus clases, Struts y demás.

Con el Servidor de Correo no puedes comunicarte directamente desde el Navegador, porque es un protocolo distinto al de HTTP (es el protocolo SMTP) y desde Javascript no puedes hacerlo.

Podrías hacerlo desde la máquina del usuario si usa un cliente de correo (como el Outlook), pero esto hemos dicho que es lo que no querías hacer. Vale.

Ahora, AJAX es algo que haces entre el Navegador y el Servidor. Pero lo que tú quieres solucionar no es esa parte. Que no quiere decir que no _puedas_ usar AJAX. Úsalo si quieres, pero no te sirve para solucionar la parte de realmente enviarle el correo al servidor de correo.

Si usas AJAX, tanto si lo haces con DWR como si lo haces con otra librería o si lo haces tú misma 'a mano', lo único que haces es comunicar desde el Navegador hasta el Servidor. Y sí, como es lógico necesitas hacer algo en el Servidor. Ese 'algo' puede ser una acción de Struts, o puede ser un servlet o lo que quieras, pero sí, hay que hacerlo.


Para enviar el correo en sí, si tienes ya un ejemplo (que seguramente usará el Mail API) pues estupendo. Lo único que te falta es precisamente el servidor SMTP. Porque para enviar correo, se lo tienes que enviar a un servidor de correo, claro.
Lo dicho, prueba a usar Mercury o James. Haz funcionar eso. Y luego, después, más tarde, si **quieres** añadir AJAX hazlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 17/05/2007 10:41:37
Muchas gracias por la explicación muy clara y completita. :)

Ahora he instalado Mercury y lo he configurado por un tutorial que encontré bastante completo y con imágenes. Pero a la hora de la verdad no me funciona por no variar :(
Cuando envío un mensaje a mi dirección de correo me sale lo siguiente en la ventana POP3 Client

10:53:26 - Connecting to hotmail.com:110 as 'merce_bernal'
Identifying unread messages... - Network error; delivering anyway.

¿Lo he configurado mal?Es que a la hora de poner la dirección POP3 del servidor de correo no sabía que tenía que poner, pues ponía que tenía que poner pop.miservidor.com, ¿es eso, no?¿que he de poner?

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 17/05/2007 11:16:56
He probado a poner pop.hotmail.com y hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Gonzalo (180 intervenciones) el 17/05/2007 14:08:24
Mercury es un servidor de correo completo. Como tal tiene servicio saliente y servicio entrante.

Pero en realidad a ti lo que te interesa es únicamente el servicio saliente (que es el SMTP). Lo que se refiere al servicio POP3 puedes desactivarlo. Se pueden activar y desactivar los varios servicios por separado y poner que se arranquen sólo los que quieras al arrancar el ordenador.

En concreto ese error que te da es que se está intentando _bajar_ tu correo de Hotmail. Que, en principio, no creo que te interese. Al menos no para tu aplicación.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 18/05/2007 11:23:16
No se que pasa pero no me envía los correos. ¿Necesito poner la direccion IP de hotmail?¿Como la puedo saber? Es que me sale el siguiente error en la patalla de MercuryE SMTP Client:

11:33:44: processing job MO0030CA
Temporary error 249 (temporary MX resolution error) resolving 'hotmail.com'.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Gonzalo (180 intervenciones) el 18/05/2007 12:22:08
Eso parece un problema con la resolución de nombres de dominio. En principio en Mercury no necesitas ponerle los servidores DNS, porque lo resuelve a través de Windows. Aún así, puedes si quieres ponerlos en "Nameservers" en la configuración SMTP. ( http://www.mundopc.net/freeware/articulos/mercury/images/smtp_client2.jpg )

Abre una consola y ejecuta:
tracert hotmail.com
A ver si eso funciona. Si funciona no quiere decir nada, pero si no funciona, entonces tienes que configurar el servidor DNS en el sistema (Configuración -> Conexiones de red -> (botón derecho en la conexión) -> Propiedades -> TCP/IP -> Propiedades)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 18/05/2007 12:36:23
Pues al ejecutar el comando tracert se agota el tiempo de espera para la solicitud.
A la hora de configurarlo, ¿qué he de poner? tengo la opción de obtener la direción del servidor de DNS automáticamente.

Lo siento pero es que estoy perdidísima...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Gonzalo (180 intervenciones) el 18/05/2007 12:53:24
Espera...

Cuando ejecutas el tracert, lo importante ¿dice que no puede resolver hotmail.com o la primera linea dice Traza a la dirección hotmail.com [64.4.33.7]?

Nota: He estado hablando con unos aquí y me han comentado que también es posible que tu proveedor de acceso (Telefónica?) no te permita enviar correos así. Intentaré enterarme pero por ahora no sé más.

De todos modos... entiendo que esto que estás haciendo es para probar, no? Que luego cuando tengas la aplicación la pondrás en un servidor ¿no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Mercedes (125 intervenciones) el 18/05/2007 12:58:43
Si, la primera línea pone eso. Y mi proveedor es Telefónica, si.

Estoy haciendo esta aplicación como proyecto de fin de carrera, y luego supongo que la tendré que subir al servidor de la facultad, ¿por qué?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Gonzalo (180 intervenciones) el 18/05/2007 17:00:49
Te he enviado un mail. Más cómodo xD
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda ENVIAR EMAIL

Publicado por Jose (2 intervenciones) el 30/06/2007 01:49:18
Hola chicos, he seguido vuestra conversacion, Mercedes podrias explicar como has resuelto todo finalmente, tambien estoy haciendo una aplicacion en JSP que al dar de alta un usuario quiero que le envie un correo electronico al usuario diciendole su contraseña y la verdad q voy dando un poco bandazos, por lo que me seria de ayuda ver tu ejemplo. La configuracion del servidor SMTP y la funcion Java.
Muchas gracias por la atencion.
Salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar