|
|
@@ -146,7 +146,8 @@ public class SecurityController {
|
|
|
SystemSession.setUser(user);
|
|
|
log(request, user);
|
|
|
}
|
|
|
- return new ModelMap("returnUrl", returnUrl);
|
|
|
+ // returnUrl有时候为null,然后生成URL的时候会出现undefined
|
|
|
+ return new ModelMap("returnUrl", returnUrl==null?"":returnUrl);
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
@@ -167,6 +168,15 @@ public class SecurityController {
|
|
|
SSOConfig config = SSOHelper.getSSOService().getConfig();
|
|
|
model.addAttribute("askUrl", config.getCrossAskOutUrl());
|
|
|
model.addAttribute("returnUrl", String.valueOf(request.getSession().getAttribute(SSOConfig.SSOReferer)));
|
|
|
+ // 登录情况下,登出地址
|
|
|
+ Object logoutUrl = null;
|
|
|
+ boolean cross = SSOHelper.isCrossDomain(request);
|
|
|
+ if (cross) {
|
|
|
+ logoutUrl = SSOHelper.getRedirectRefererLogoutUrl(request);
|
|
|
+ } else {
|
|
|
+ logoutUrl = SSOHelper.getRedirectLogoutUrl(request, String.valueOf(request.getSession().getAttribute("SSOReferer")));
|
|
|
+ }
|
|
|
+ model.addAttribute("logoutUrl", logoutUrl);
|
|
|
return model;
|
|
|
}
|
|
|
|