Tomcat6.0.20 + 전자정부3.2 세션 비정상 종료 문제
- 작성자 :
- 잔*
- 작성일 :
- 2016-05-09 14:17:05
- 조회수 :
- 1,760
- 구분 :
- 운영환경
- 진행상태 :
- 완료
Q
Windows 7 64bit / JDK1.7
현재 Tomcat 6.0 + 전자정부 3.2 기반에서 개발을 하고 있습니다.
상황은 글 등록화면에서 주소를 검색하기 위해 도로명주소사업단의 도로명 주소 팝업을 연계하여 사용하고 있습니다.
http://192.168.0.11/regist/common/address.do
개발 서버에서 위의 URL을 호출하면 도로명 주소를 연계하기 위해서
팝업창에서 링크가 http://www.juso.go.kr/addrlink/addrLinkUrl.do 로 바뀌어서 주소를 검색한 다음
원래 창으로 선택한 주소를 넘겨줍니다.
처음에는 저장시에 계속 세션이 빠져서 무엇이 문제인가 헤매다가
HttpSessionListener를 붙여 sessionDestroyed() 함수에서 디버깅을 해보니
192.168.0.11 에서 www.juuso.go.kr로 넘어가는 즉시 기존 세션이 종료되어 sessionDestroyd()가 호출되고
www.juso.go.kr에서 결과값을 192.168.0.11로 리턴해 줄 경우 신규 세션이 생성됩니다.
설정을 어떻게 바꾸어야 이 문제가 해결이 될까요?
참고로 로그인 시에는 별다른 Spring쪽의 시큐리티를 사용하지 않고
session.setAttribute(Constants.SESSION_KEY_USER, vo);
이렇게 처리하고 있고
dispatcher-servlet.xml에서는 interceptor에서 url패턴을 정의해서 로그인 한 사용자가 사용할 수 있는 페이지를 정의하고 있습니다.
(이 부분은 정상적으로 작동되는 것 확인)
현재 Tomcat 6.0 + 전자정부 3.2 기반에서 개발을 하고 있습니다.
상황은 글 등록화면에서 주소를 검색하기 위해 도로명주소사업단의 도로명 주소 팝업을 연계하여 사용하고 있습니다.
http://192.168.0.11/regist/common/address.do
개발 서버에서 위의 URL을 호출하면 도로명 주소를 연계하기 위해서
팝업창에서 링크가 http://www.juso.go.kr/addrlink/addrLinkUrl.do 로 바뀌어서 주소를 검색한 다음
원래 창으로 선택한 주소를 넘겨줍니다.
처음에는 저장시에 계속 세션이 빠져서 무엇이 문제인가 헤매다가
HttpSessionListener를 붙여 sessionDestroyed() 함수에서 디버깅을 해보니
192.168.0.11 에서 www.juuso.go.kr로 넘어가는 즉시 기존 세션이 종료되어 sessionDestroyd()가 호출되고
www.juso.go.kr에서 결과값을 192.168.0.11로 리턴해 줄 경우 신규 세션이 생성됩니다.
설정을 어떻게 바꾸어야 이 문제가 해결이 될까요?
참고로 로그인 시에는 별다른 Spring쪽의 시큐리티를 사용하지 않고
session.setAttribute(Constants.SESSION_KEY_USER, vo);
이렇게 처리하고 있고
dispatcher-servlet.xml에서는 interceptor에서 url패턴을 정의해서 로그인 한 사용자가 사용할 수 있는 페이지를 정의하고 있습니다.
(이 부분은 정상적으로 작동되는 것 확인)
A
안녕하세요. 표준프레임워크 센터 입니다.
센터에서는 작업하신 설정 내역과 여러가지 개발환경은 알수 없으나
에러처리 방법의 가이드 정도만 제공해 드릴 수 있을 것 같습니다.
tomcat6 기존 세션이 종료되어 sessionDestroyd() 문제는
크게 두가지 정도로 볼수 있을 것 같습니다.
1) 웹환경 설정중 session에 관련된 설정에서 문제가 있는경우
> 관련문제 발생시 설정 변경 권장
2) tomcat6 session 관련된 버그
https://tomcat.apache.org/security-6.html
> 관련문제 발견시 업그레이드 권장
참고하셔서 면밀히 검토후 해결하시면 될 것 같습니다.
감사합니다.
센터에서는 작업하신 설정 내역과 여러가지 개발환경은 알수 없으나
에러처리 방법의 가이드 정도만 제공해 드릴 수 있을 것 같습니다.
tomcat6 기존 세션이 종료되어 sessionDestroyd() 문제는
크게 두가지 정도로 볼수 있을 것 같습니다.
1) 웹환경 설정중 session에 관련된 설정에서 문제가 있는경우
> 관련문제 발생시 설정 변경 권장
2) tomcat6 session 관련된 버그
https://tomcat.apache.org/security-6.html
> 관련문제 발견시 업그레이드 권장
참고하셔서 면밀히 검토후 해결하시면 될 것 같습니다.
감사합니다.