diff --git a/WebContent/jsp/common/screen/emergency.jsp b/WebContent/jsp/common/screen/emergency.jsp index 4d747d2..e396d9b 100644 --- a/WebContent/jsp/common/screen/emergency.jsp +++ b/WebContent/jsp/common/screen/emergency.jsp @@ -156,9 +156,16 @@ $("#changePwd").click(function(){ changePwd(); }); - + $("#btn_sso_login").click(function(){ + fncSsoLogin(); + }); }); + + function fncSsoLogin() { + sessionStorage["serviceType"] = $("select[name=serviceType]").val(); + location.href = ''; + } @@ -208,7 +215,7 @@
'"> + value="SSO Login">

<%=resultMsg %>

diff --git a/src/main/java/com/eactive/eai/rms/common/login/MainController.java b/src/main/java/com/eactive/eai/rms/common/login/MainController.java index f0ab176..c966045 100644 --- a/src/main/java/com/eactive/eai/rms/common/login/MainController.java +++ b/src/main/java/com/eactive/eai/rms/common/login/MainController.java @@ -138,7 +138,14 @@ public class MainController implements InterceptorSkipController { SessionManager.forceRegisterUserSession(request, dto); session.setAttribute(CommonConstants.LOGIN, dto); - return loadUserInfoAndSetupSession(request, session, dto, userInfo); + String result = loadUserInfoAndSetupSession(request, session, dto, userInfo); + + // SSO 로그인 시 기본 serviceType 파라미터 추가 (외부 링크 직접 접근 대응) + if ("redirect:/main.do".equals(result)) { + DataSourceType defaultType = DataSourceTypeManager.getDynamicDataSourceTypes().get(0); + return "redirect:/main.do?serviceType=" + defaultType.getName(); + } + return result; } catch (Exception e) { return handleExceptionsAndRedirect(request, session, e); }