2014-12-25 3 views
0

Ниже код работал раньше, но теперь показывает ошибки как javax.mail.AuthenticationFaliedотправить почту с помощью JSP

Пожалуйста, помогите мне добавить библиотеку mail.jar и activation.jar

Am получать электронную почту от зарегистрированного пользователя от база данных mysql.

<%@page import="javax.mail.internet.InternetAddress"%> 
<%@page import="java.util.*" %> 
<%@page import="javax.mail.internet.MimeMessage"%> 
<%@page import="javax.mail.Session" %> 
<%@page import="java.util.Properties"%> 
<%@page import="javax.mail.Message"%> 
<%@page import="javax.mail.MessagingException"%> 
<%@page import="javax.mail.Transport"%> 
<%@page import="javax.mail.PasswordAuthentication"%> 

    <%@ page language="java" import ="java.sql.*" %> 
    <%@ page import="java.io.*" %> 
    <%@ page import="java.text.ParseException" %> 
    <%@ page import="java.text.SimpleDateFormat" %> 
    <%@ page import="java.util.Date" %> 

     <% 

     String email=request.getParameter("email"); 

     Connection con=null; 
     Statement stmt=null; 
     Class.forName("com.mysql.jdbc.Driver").newInstance(); 
     con=DriverManager.getConnection("jdbc:mysql://localhost:3306/discussion","root","root"); 
     Statement st1=con.createStatement(); 
     ResultSet rs1=st1.executeQuery("select uname from userreg where email='"+email+"'"); 

     if(rs1.next()) 
     { 

     final String username="[email protected]"; 
     final String password="password"; 

     Random ran=new Random(); 
     String str=new String(); 
     for(int i=1;i<=5;i++) 
      { 
      str+=ran.nextInt(10); 
      } 


     Properties props=new Properties(); 
     props.put("mail.smtp.auth", "true"); 
     props.put("mail.smtp.starttls.enable", "true"); 
     props.put("mail.smtp.host","smtp.gmail.com"); 
     props.put("mail.smtp.port", 587); 

     Session session1=Session.getInstance(props, 
     new javax.mail.Authenticator() { 
     public PasswordAuthentication getPasswordAuthentication(){ 
     return new PasswordAuthentication(username,password); 
     }});  
     try 
      { 
      stmt=con.createStatement(); 
      ResultSet rs=stmt.executeQuery("select * from userreg"); 
      rs.next(); 
      Statement st=con.createStatement(); 
      st.executeUpdate("insert into forgot(uname,code) values('"+rs1.getString(1)+"','"+str+"')"); 


      Message message=new MimeMessage(session1); 
      message.setFrom(new InternetAddress("[email protected]")); 

      message.setRecipients(Message.RecipientType.TO,InternetAddress.parse(""+email+"")); 
      message.setSubject("chakrika infosolution"); 
      message.setSubject("Forgot Password"); 
      message.setContent("Hello "+rs1.getString(1)+",<br>Your Secret Code is: "+str+"<br/><a href='http://localhost:8084/Board/board/forgotpasswordd.jsp?uname="+rs1.getString(1)+"&code="+str+"'>Click Here</a> to reset your Password<br/><br/>","text/html; charset=UTF-8"); 
      Transport.send(message); 
      Transport.send(message); 

      %> 
      <script> 
       alert("Email send Successfully"); 
       window.location="../board/forgotpassword.jsp"; 
      </script> 

      <% 

      } 
     catch(MessagingException e) 
           { 
      out.println(e); 
     } 

     } 
     else 
     {  %> 
      <script> 
       alert("Invalid Email"); 
       window.location="../board/forgotpassword.jsp"; 
      </script> 

     <%} 
     %> 
    </body> 
</html> 
+2

что изменилось, если оно сработало раньше и теперь уже нет? , если вы не изменили код и ничего больше в вашей системе, то, возможно, ваша учетная запись была отменена из-за того, что вы отправляете слишком много электронных писем или тому подобное. – hoijui

+0

Проверьте свой брандмауэр. Если возможно, сначала проверьте использование mozilla thunderbird ... если это тоже не удастся, тогда ваш брандмауэр заблокирует соединение. См. Этот http://stackoverflow.com/questions/27289931/exception-in-sending-email-from-java-via-gmail, если вы можете получить некоторую информацию. – Leo

ответ

0

Как я увидел ваш код, который является правильным. Используйте JavaMail Api 1.4.5 jar или последнюю версию вместо банды, которую вы использовали.

Смежные вопросы