KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > appfuse > webapp > action > PasswordHint


1 package org.appfuse.webapp.action;
2
3 import org.appfuse.model.User;
4 import org.appfuse.webapp.util.RequestUtil;
5
6 /**
7  * Managed Bean to send password hints to registered users.
8  *
9  * <p>
10  * <a HREF="PasswordHint.java.htm"><i>View Source</i></a>
11  * </p>
12  *
13  * @author <a HREF="mailto:matt@raibledesigns.com">Matt Raible</a>
14  */

15 public class PasswordHint extends BasePage {
16     private String JavaDoc username;
17     
18     public String JavaDoc getUsername() {
19         return username;
20     }
21     
22     public void setUsername(String JavaDoc username) {
23         this.username = username;
24     }
25
26     public String JavaDoc execute() {
27         
28         // ensure that the username has been sent
29
if (username == null || "".equals(username)) {
30             log.warn("Username not specified, notifying user that it's a required field.");
31
32             addError("errors.required", getText("user.username"));
33             return null;
34         }
35         
36         if (log.isDebugEnabled()) {
37             log.debug("Processing Password Hint...");
38         }
39         
40         // look up the user's information
41
try {
42             User user = userManager.getUserByUsername(username);
43
44             StringBuffer JavaDoc msg = new StringBuffer JavaDoc();
45             msg.append("Your password hint is: " + user.getPasswordHint());
46             msg.append("\n\nLogin at: " + RequestUtil.getAppURL(getRequest()));
47
48             message.setTo(user.getEmail());
49             String JavaDoc subject = '[' + getText("webapp.name") + "] " + getText("user.passwordHint");
50             message.setSubject(subject);
51             message.setText(msg.toString());
52             mailEngine.send(message);
53             
54             addMessage("login.passwordHint.sent",
55                        new Object JavaDoc[] { username, user.getEmail() });
56             
57         } catch (Exception JavaDoc e) {
58             e.printStackTrace();
59             // If exception is expected do not rethrow
60
addError("login.passwordHint.error", username);
61         }
62
63         return "success";
64     }
65 }
66
Popular Tags