Enviar MAIL con JSP desde form HTML
Publicado por Iván (1 intervención) el 19/04/2013 10:11:30
Hola,
Estoy empezando a aprender Java, y me he puesto el objetivo de enviar un mail con JSP. Estoy acostumbrado a hacerlo vía PHP, lo cual ya me resulta sencillo, pero a pesar de que JSP también lo es, no logro hacer que funcione.
Pongo a continuación el código JSP a ver si alguien puede ayudarme y decirme qué es lo que falla.
Gracias de antemano
Estoy empezando a aprender Java, y me he puesto el objetivo de enviar un mail con JSP. Estoy acostumbrado a hacerlo vía PHP, lo cual ya me resulta sencillo, pero a pesar de que JSP también lo es, no logro hacer que funcione.
Pongo a continuación el código JSP a ver si alguien puede ayudarme y decirme qué es lo que falla.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<%@ page import="java.io.*,java.util.*,javax.mail.*"%>
<%@ page import="javax.mail.internet.*,javax.activation.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%
// Quién recibe el mail
String to = "MAIL@gmail.com";
// Quien envía el mail
String from = "MAIL@HOST.net";
// Propiedades del mail
properties.setProperty("mail.user", "MAIL@HOST.net");
properties.setProperty("mail.password", "PASS");
properties.setProperty("mail.smtp.starttls.enable", "true"); // El mail usa STARTTLS
properties.setProperty("mail.smtp.port", "25");
properties.setProperty("mail.smtp.host", "smtp.HOST.com");
properties.setProperty("mail.smtp.auth", "true");
properties.setProperty("mail.HOST.net", host);
// Obtener el objeto de propiedades del mail
Properties properties = System.getProperties();
// Obtener el objeto de propiedades de la sesion
Session mailSession = Session.getDefaultInstance(properties);
try{
// Declarando variables
String host = "mail.HOST.net";
String subject;
String result;
// Variables que se obtienen via el HTML FORM
String name = request.getParameter("name");
String surname = request.getParameter("surname");
String id = request.getParameter("id");
String natnum = request.getParameter("natnum");
String altnum = request.getParameter("altnum");
String dir = request.getParameter("dir");
String dirout = request.getParameter("dir2");
String radio = request.getParameter("type");
String comment = request.getParameter("comment");
String email = request.getParameter("email");
String box = request.getParameter("box");
// Condición para definir el subject
if (radio.equals("otros")) {
String subject = "Tipo de objeto: request.getParameter('box');";
}
else {
String subject = "Tipo de objeto: request.getParameter('radio');";
}
// MIME
MimeMessage message = new MimeMessage(mailSession);
// Declarando el FROM
message.setFrom(new InternetAddress("MAIL@HOST.net"));
// Declarando el recipiente
message.addRecipient(Message.RecipientType.TO,new InternetAddress("MAIL@GMAIL.com"));
// Declarando el asunto
message.setSubject("Objeto extraviado: request.getParameter('Subject');");
// Contenido del mensaje HTML
message.setContent("
<br><p><strong><font color='red'>
- Datos del remitente -
</font></strong></p>
<strong><br>
Nombre:
</strong>
request.getParameter('name');
<br><strong>
Apellidos:
</strong>
request.getParameter('surname');
<br><p><strong>
Documento de identidad:
</strong></p>
request.getParameter('id');
<br><p><strong>Teléfono nacional:
</strong>request.getParameter('natnum');
<br>";,
"text/html" );
// Mandar mensaje
Transport.send(message);
result = "Mensaje enviado !!";
}catch (MessagingException mex) {
mex.printStackTrace();
result = "Algo ha salido mal";
}
%>
Gracias de antemano
Valora esta pregunta


0