我會通過AOP做到這一點,如果可能的話。
此解決方案適用於Spring 3.x和Spring Security 3.x. Spring Security是Acegi的直接繼承者,如果可能的話,我會使用它。我希望這適用於以前的版本。
@AfterReturning("execution(* org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler.onAuthenticationSuccess(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.springframework.security.core.Authentication)) && args(request, response, authentication)")
public void onAuthenticationSuccess(HttpServletRequest request,
HttpServletResponse response,
Authentication authentication) {
logger.debug(authentication.getPrincipal() + " logged in.");
}
如果你感到不舒服與AOP的工作,當然你也可以建立在手動SimpleUrlAuthenticationSuccessHandler
的包裝。
這很好用!不知道那件事。非常感謝! – 2010-06-21 01:42:08
哦,我更喜歡這個,而不是我的解決方案!很高興學習新的東西。 – hleinone 2010-06-21 07:35:11