Después de darle la vuelta al internet encontré como utilizar el famoso JavaMail para enviar correos desde una JSP, el ejemplo que se muestra está en una JSP, pero se lo uede sacar a una clase que puede ser un managed bean para JSF o un JavaBean para tags JSP.
El codigo es el siguiente:
<%@page contentType="text/html">
<%@page pageEncoding="UTF-8"%>
<%@page import="java.util.*"%>
<%@page import="javax.mail.*"%>
<%@page import="javax.mail.internet.*"%>
<%@page import="javax.activation.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
// SUBSTITUTE YOUR EMAIL ADDRESSES HERE!!!
String to = "nombre@dominio.com";
String from = "aqui va un correo propio del servidor donde lo subes";
// SUBSTITUTE YOUR ISP'S MAIL SERVER HERE!!!
String host = "el smtp server que tu proveedor de hosting te brinda";
//String host = "pop.gmail.com"; aqui se usa google, no se funcione
// Create properties, get Session
Properties props = new Properties();
// If using static Transport.send(),
// need to specify which host to send it to
props.setProperty("mail.smtp.starttls.enable", "true");
props.setProperty("mail.smtp.auth", "true");
// To see what is going on behind the scene
//props.put("mail.debug", "true");
Session ses = Session.getDefaultInstance(props);
ses.setDebug(true);
try {
// Instantiatee a message
MimeMessage msg = new MimeMessage(ses);
//Set message attributes
msg.setFrom(new InternetAddress(from));
msg.setRecipients(Message.RecipientType.TO, to);
msg.setSubject("SALUDOS DESDE JAVA MAIL");
msg.setSentDate(new Date());
// Set message content
msg.setText("AQUI VA EL MENSAJE DESDE JAVA MAIL");
//Send the message
Transport t = ses.getTransport("smtp");
t.connect("el smtp server que tu proveedor de hosting te brinda", -1, "el mail que enviara el correo", "el password del mail que enviara el correo");
t.sendMessage(msg, msg.getAllRecipients());
t.close();
}
catch (MessagingException mex) {
// Prints all nested (chained) exceptions as well
out.println(mex.toString());
}
catch (Exception e){
out.println(e.toString());
}
%>
</body>
</html>
A mi me funcionó perfecto, espero sirva a alguien más.´
Algunos recursos:
El mejor: http://www.chuidiang.com/java/herramientas/javamail/enviar-correo-javamail.php
http://www.chuidiang.com/chuwiki/index.php?title=Enviar_correos_con_JavaMail_y_Java
http://java.sun.com/products/javamail/javadocs/javax/mail/Service.html#connect()
http://www.programacion.com/java/tutorial/javamail/4/
http://lineadecodigo.com/2006/12/12/enviar-correo-en-copia-oculta-con-javamail/
Saludos