Thank Matt. However, in the enclosed link it is API description. Do anybody have sample code for it? Thank you! -Bruce
mraible wrote: > > You might try registering Spring's RequestContextListener in your > web.xml. That way, you can get the request from a ThreadLocal and get > the session from that. > > http://www.springframework.org/docs/api/org/springframework/web/context/request/RequestContextListener.html > > Matt > > On 8/24/07, BruceLee <[EMAIL PROTECTED]> wrote: >> >> Thank Absolut a lot for sharing the helpful code. >> However when I try to getSession() in the Listener, sometimes it returns >> null. After I refresh the page serveral times, it gets normal. Any ideas? >> ---my code--- >> public void onApplicationEvent(ApplicationEvent event) { >> // check failed event >> if(event instanceof AuthenticationSuccessEvent) >> { >> ...... >> HttpSession session = >> ServletActionContext.getRequest().getSession(); >> userManager.saveUser(user); >> userLoggedinManager.saveUserLoggedin(userLoggedin); >> session.setAttribute("userId",user.getId()); >> session.setAttribute("username",user.getUsername()); >> ...... >> } >> } >> >> -Mike >> >> >> >> Absolut wrote: >> > >> > Or take a look at this code sample from our app: >> > >> > public class LoginListener implements ApplicationListener >> > { >> > protected Log log = LogFactoryImpl.getLog(getClass()); >> > private UserManager userManager; >> > >> > >> > >> > /** >> > * @param userManager the userManager to set >> > */ >> > public void setUserManager(UserManager userManager) { >> > this.userManager = userManager; >> > } >> > >> > >> > >> > /** >> > * @see >> > >> org.springframework.context.ApplicationListener#onApplicationEvent(org.sprin >> > gframework.context.ApplicationEvent) >> > */ >> > public void onApplicationEvent(ApplicationEvent event) { >> > // check failed event >> > if(event instanceof AuthenticationSuccessEvent) >> > { >> > AuthenticationSuccessEvent authenticationSuccessEvent = >> > (AuthenticationSuccessEvent) event; >> > String username = >> > authenticationSuccessEvent.getAuthentication().getName(); >> > User user = userManager.getUserByUsername(username); >> > user.setLastLogin(new Date()); >> > int loginCount = 0; >> > if(user.getLoginCount()!= null) >> > { >> > loginCount = user.getLoginCount().intValue(); >> > } >> > loginCount++; >> > user.setLoginCount(new Integer(loginCount)); >> > try >> > { >> > userManager.saveUser(user); >> > } >> > catch (UserExistsException e) >> > { >> > log.error("Error during updating last login for user >> > ["+username+"]",e); >> > } >> > } >> > >> > } >> > >> > } >> > >> > _____ >> > >> > Von: Michael Horwitz [mailto:[EMAIL PROTECTED] >> > Gesendet: Montag, 13. August 2007 10:01 >> > An: [email protected] >> > Betreff: Re: [appfuse-user] Add new function after login >> > >> > >> > ACEGI generate Spring application events on login. You will need to >> create >> > a >> > listener to log the appropriate events - do a search on this list, or >> look >> > at Spring events on the Spring framework site for more information. >> > >> > Mike. >> > >> > >> > On 8/11/07, BruceLee <HYPERLINK >> "mailto:[EMAIL PROTECTED]"[EMAIL PROTECTED]> >> > wrote: >> > >> > >> > Team, >> > I want to add some function e.g. storing login date to database after >> > login. >> > What is the hook to add this? Using a filter, interceptor or override >> some >> > class? >> > My env: 1.9.4 WebWork >> > Thanks! -Bruce >> > -- >> > View this message in context: HYPERLINK >> > >> "http://www.nabble.com/Add-new-function-after-login-tf4252462s2369.html#a121 >> > >> 02596"http://www.nabble.com/Add-new-function-after-login-tf4252462s2369.html >> > #a12102596 >> > Sent from the AppFuse - User mailing list archive at HYPERLINK >> > "http://Nabble.com"Nabble.com. >> > >> > --------------------------------------------------------------------- >> > To unsubscribe, e-mail: HYPERLINK >> > >> "mailto:[EMAIL PROTECTED]"[EMAIL PROTECTED] >> > .java.net >> > For additional commands, e-mail: HYPERLINK >> > "mailto:[EMAIL PROTECTED]"[EMAIL PROTECTED] >> > >> > >> > >> > >> > >> > No virus found in this incoming message. >> > Checked by AVG Free Edition. >> > Version: 7.5.476 / Virus Database: 269.11.15/949 - Release Date: >> > 12.08.2007 >> > 11:03 >> > >> > >> > >> > No virus found in this outgoing message. >> > Checked by AVG Free Edition. >> > Version: 7.5.476 / Virus Database: 269.11.15/949 - Release Date: >> > 12.08.2007 >> > 11:03 >> > >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/Want-to-add-extra-function-like-saving-login-date-in-login-action-tf4252462s2369.html#a12323058 >> Sent from the AppFuse - User mailing list archive at Nabble.com. >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > > -- > http://raibledesigns.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- View this message in context: http://www.nabble.com/Want-to-add-extra-function-like-saving-login-date-in-login-action-tf4252462s2369.html#a12354314 Sent from the AppFuse - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
