Results 1 to 4 of 4
Thread: [SOLVED] Email send problem
- 09-19-2008, 02:16 AM #1
[SOLVED] Email send problem
I have created a servlet which sends the mail to my mail serjantik@gmail.com
All the libs mail.jar and activation.jar are in apche-tomcat libs folder,and also added to the Web Dynamic Project in Eclipse.I got such excpetion:
Java Code:java.lang.SecurityException: Access to default session denied javax.mail.Session.getDefaultInstance(Session.java:292) org.eclipse.http.SamSite.SendEmail.doPost(SendEmail.java:65) javax.servlet.http.HttpServlet.service(HttpServlet.java:710) javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
here is the sendmail.html file:
And SendMail servlet file codeJava Code:<!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>Insert title here</title> </head> <body> <form method=post action="SendEmail"> Reciever <input type=text name=text2><br> Subject <input type=text name=text3><br> Message <textarea name='area1' rows=5 cols=30> </textarea> <input type=submit> </form> </body> </html>
What is wrong with SSL?Java Code:package org.eclipse.http.SamSite; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import javax.mail.*; import javax.mail.Authenticator; import javax.mail.PasswordAuthentication; import javax.mail.internet.*; // important import javax.mail.event.*; // important import java.net.*; import java.util.*; /** * Servlet implementation class for Servlet: SendEmail * */ public class SendEmail extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { static final long serialVersionUID = 1L; private static final String SMTP_HOST_NAME = "gmail-smtp.l.google.com"; private static final String SMTP_AUTH_USER = "serjantik"; private static final String SMTP_AUTH_PWD = "";//your password,i removed my password here private static final String fromEmailAddress="serjantik@gmail.com"; /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#HttpServlet() */ public SendEmail() { super(); } /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub } /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub PrintWriter out=response.getWriter(); response.setContentType("text/html"); boolean debug = false; //properties Properties props = new Properties(); props.put("mail.transport.protocol", "smtp"); props.put("mail.smtp.starttls.enable","true"); props.put("mail.smtp.host", SMTP_HOST_NAME); props.put("mail.smtp.auth", "true"); Authenticator auth = new SMTPAuthenticator(); Session session = Session.getDefaultInstance(props, auth); String s2 = request.getParameter("text2"); String s3 = request.getParameter("text3"); String s4 = request.getParameter("area1"); session.setDebug(debug); // create a message Message msg = new MimeMessage(session); try{ // set the from and to address InternetAddress addressFrom = new InternetAddress(fromEmailAddress); msg.setFrom(addressFrom); InternetAddress[] addressTo = new InternetAddress[]{new InternetAddress(s2)}; msg.setRecipients(Message.RecipientType.TO, addressTo); // Setting the Subject and Content Type msg.setSubject(s3); msg.setContent(s4, "text/plain"); Transport.send(msg); }catch(MessagingException err){ out.println("The message wasn't sent,some errors occured"); } } private class SMTPAuthenticator extends javax.mail.Authenticator { public PasswordAuthentication getPasswordAuthentication() { String username = SMTP_AUTH_USER; String password = SMTP_AUTH_PWD; return new PasswordAuthentication(username, password); } } }Last edited by serjant; 09-19-2008 at 02:18 AM.
- 09-19-2008, 02:27 AM #2
Oh solved,I forgot to provide ssl security in doPost :
Java Code://ssl security providing java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
- 09-19-2008, 03:10 PM #3
- 11-17-2010, 06:07 AM #4
Member
- Join Date
- Nov 2010
- Posts
- 3
- Rep Power
- 0
Similar Threads
-
send email using JMS
By Heather in forum Advanced JavaReplies: 9Last Post: 01-07-2009, 03:04 PM -
How to send email with specific Content-Transfer-Encoding?
By ally in forum Advanced JavaReplies: 1Last Post: 09-27-2008, 01:42 AM -
Email send problem
By serjant in forum JavaServer Pages (JSP) and JSTLReplies: 0Last Post: 09-19-2008, 02:15 AM -
Email Sigs.
By tomrayne in forum Advanced JavaReplies: 1Last Post: 07-13-2007, 09:14 AM -
To send email of page present Web from a Jsp
By Marcus in forum JavaServer Pages (JSP) and JSTLReplies: 1Last Post: 06-09-2007, 04:08 AM


LinkBack URL
About LinkBacks
Reply With Quote

Bookmarks