EgovUserDetailsHelper.getAuthenticatedUser() 문제
- 작성자 :
- 송*래
- 작성일 :
- 2013-07-22 17:28:42
- 조회수 :
- 1,312
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하십니까?
저희는 전자정부프레임워크 1.0을 사용하여 ERP를 개발하여 운영하고 있습니다.
운영중에 IE10 버전에서 세션 문제로 인해 2.5로 업그레이드를 하고 있는데요?
업그레이드를 해도 같은 문제가 생겼습니다.그래서 좀 더 확인을 하다보니,
jsessionid가 두개 생성되는 문제였습니다.
저희가 사용하는 뷰어는 상용툴인 Mybuilder 라는 프로그램인데,
이곳에서는 ie10 에서는 두개를 생성되게끔 할 수 밖에 없다고 하더라구요.
그래서 저희 서버단에서 그 두개의 세션을 처리해줘야 겠는데....
EgovUserDetailsHelper 에서 두개의 세션을 확인할수는 없나요?
저희는 그냥
LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
이런식으로 세션을 이용하여 로그인정보를 가져오는데.
에러가 발생하더라구요.
authentication.getName() 에서 roleAnonymous 값으로 넘어와서 생기는건데...
혹시 방법이 없을까요?
그렇지 않다면, 이 부분을 다 걷어내고 사용자정보를 매번 넘겨줘야하는데...
방법을 좀 알려주세요~
저희는 전자정부프레임워크 1.0을 사용하여 ERP를 개발하여 운영하고 있습니다.
운영중에 IE10 버전에서 세션 문제로 인해 2.5로 업그레이드를 하고 있는데요?
업그레이드를 해도 같은 문제가 생겼습니다.그래서 좀 더 확인을 하다보니,
jsessionid가 두개 생성되는 문제였습니다.
저희가 사용하는 뷰어는 상용툴인 Mybuilder 라는 프로그램인데,
이곳에서는 ie10 에서는 두개를 생성되게끔 할 수 밖에 없다고 하더라구요.
그래서 저희 서버단에서 그 두개의 세션을 처리해줘야 겠는데....
EgovUserDetailsHelper 에서 두개의 세션을 확인할수는 없나요?
저희는 그냥
LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
이런식으로 세션을 이용하여 로그인정보를 가져오는데.
에러가 발생하더라구요.
authentication.getName() 에서 roleAnonymous 값으로 넘어와서 생기는건데...
혹시 방법이 없을까요?
그렇지 않다면, 이 부분을 다 걷어내고 사용자정보를 매번 넘겨줘야하는데...
방법을 좀 알려주세요~
A
안녕하세요. 송복래님.
우선 jsessionid는 도메인별로 web application별로 생성이 됩니다. 기본적으로는 도메인이 같으면 동일한 jsessionid를 가지기 때문에 하나의 도메인에 2개 이상의 web application을 운영하는 경우 session 충돌의 문제가 발생합니다.
그래서 WAS별로 web application마다 jsessionid 명을 변경할 수 있는 방법을 제공합니다.
질문 주신 부분 상에 두개 생성된다는 의미가 Mybuilder라는 솔루션이 동일한 도메인의 별도의 web application을 설정되어 있으신 경우 같습니다.
이런 상황에서 web application간 session 공유나 미공유에 대한 설정은 WAS의 설정으로 가능할 것 같으며, 사용하시는 WAS 벤더나 Mybuilder 업체에 문의해 주시면 되실 것 같습니다.
참고로 해당 부분은 표준프레임워크 및 응용 부분 상의 문제는 아닙니다.
(실제로 위 상황은 표준프레임워크 적용 여부와 상관없이 세션을 사용하는 방식 상의 문제로 Mybuilder 업체에 문의하시는 것이 좋으실 것 같습니다.)
그럼, 즐거운 하루되십시오.
감사합니다.
우선 jsessionid는 도메인별로 web application별로 생성이 됩니다. 기본적으로는 도메인이 같으면 동일한 jsessionid를 가지기 때문에 하나의 도메인에 2개 이상의 web application을 운영하는 경우 session 충돌의 문제가 발생합니다.
그래서 WAS별로 web application마다 jsessionid 명을 변경할 수 있는 방법을 제공합니다.
질문 주신 부분 상에 두개 생성된다는 의미가 Mybuilder라는 솔루션이 동일한 도메인의 별도의 web application을 설정되어 있으신 경우 같습니다.
이런 상황에서 web application간 session 공유나 미공유에 대한 설정은 WAS의 설정으로 가능할 것 같으며, 사용하시는 WAS 벤더나 Mybuilder 업체에 문의해 주시면 되실 것 같습니다.
참고로 해당 부분은 표준프레임워크 및 응용 부분 상의 문제는 아닙니다.
(실제로 위 상황은 표준프레임워크 적용 여부와 상관없이 세션을 사용하는 방식 상의 문제로 Mybuilder 업체에 문의하시는 것이 좋으실 것 같습니다.)
그럼, 즐거운 하루되십시오.
감사합니다.