1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| public class UserAuthenticationSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler {
/**
* {@inheritDoc}
*/
@Override
public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response,
Authentication authentication) throws ServletException, IOException {
RequestCache requestCache = new HttpSessionRequestCache();
requestCache.saveRequest(request, response);
SavedRequest savedRequest = requestCache.getRequest(request, response);
if (savedRequest == null || isAlwaysUseDefaultTargetUrl()) {
super.onAuthenticationSuccess(request, response, authentication);
return;
}
clearAuthenticationAttributes(request);
// Use the DefaultSavedRequest URL
String targetUrl = savedRequest.getRedirectUrl();
String gwtParameters = request.getParameter(getTargetUrlParameter());
if (StringUtils.hasText(gwtParameters)) {
targetUrl = targetUrl + "#" + gwtParameters;
}
getRedirectStrategy().sendRedirect(request, response, targetUrl);
}
} |