Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2018
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.68 KB | None | 0 0
  1. if (action.equals("forgotPassword")) {
  2. String email = request.getParameter("forgotemail");
  3. String question = request.getParameter("forgotquestionNo");
  4. String answer = request.getParameter("forgotanswer");
  5. String UserQuestion;
  6. String UserAnswer;
  7. String forgotmessage = "";
  8. String saltedAndHashedPassword;
  9. User user = UserDB.select(email);
  10. if (user != null) {
  11. UserQuestion = user.getQuestionNo();
  12. UserAnswer = user.getAnswer();
  13.  
  14. if (question.equals(UserQuestion) && answer.equals(UserAnswer)) {
  15. String FullName = user.getFullName();
  16. String salt = user.getSalt();
  17.  
  18. int length = 8;
  19. String chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  20. + "abcdefghijklmnopqrstuvwxyz"
  21. + "0123456789";
  22. String generatedString = new Random().ints(length, 0, chars.length())
  23. .mapToObj(i -> "" + chars.charAt(i))
  24. .collect(Collectors.joining());
  25.  
  26.  
  27.  
  28. try {
  29. salt = user.getSalt();
  30. saltedAndHashedPassword = PasswordUtil.hashAndSaltPassword(generatedString, salt);
  31. user.setPassword(saltedAndHashedPassword);
  32. UserDB.updatePassword(email, saltedAndHashedPassword);
  33. } catch (NoSuchAlgorithmException ex) {
  34. Logger.getLogger(membershipServlet.class.getName()).log(Level.SEVERE, null, ex);
  35. } catch (SQLException ex) {
  36. Logger.getLogger(membershipServlet.class.getName()).log(Level.SEVERE, null, ex);
  37. } catch (ClassNotFoundException ex) {
  38. Logger.getLogger(membershipServlet.class.getName()).log(Level.SEVERE, null, ex);
  39. }
  40.  
  41.  
  42.  
  43.  
  44. // send email to user
  45. String to = email;
  46. String from = "email_list@murach.com";
  47. String subject = "Password Reset";
  48. String body = "Dear " + FullName + ",\n\n"
  49. + "Here is your new password: \n"
  50. + generatedString + "\n"
  51. + "Have a great day and thanks again!\n\n"
  52. + "Mini-Twitter\n"
  53. + "Gordon Zhong & Dominic Vu";
  54. boolean isBodyHTML = false;
  55.  
  56. try {
  57. MailUtilGmail.sendMail(to, from, subject, body, isBodyHTML);
  58. } catch (MessagingException e) {
  59. String errorMessage
  60. = e.getMessage();
  61. request.setAttribute("errorMessage", errorMessage);
  62. this.log(" ");
  63.  
  64. }
  65. forgotmessage = "Email Sent!";
  66. request.setAttribute("forgotmessage", forgotmessage);
  67. url = "/login.jsp";
  68.  
  69. } else {
  70. forgotmessage = "Information Incorrect";
  71. request.setAttribute("forgotmessage", forgotmessage);
  72. url = "/forgotpassword.jsp";
  73. }
  74.  
  75. } else {
  76. forgotmessage = "Information Incorrect";
  77. request.setAttribute("forgotmessage", forgotmessage);
  78. url = "/forgotpassword.jsp";
  79. }
  80.  
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement