2017-11-29 11 views
0

저는 현재 tomcat 8.5.I5에서 호스팅되는 웹 응용 프로그램을 개발했습니다. 나는 IDP와 함께 SSO를 구현하려고하는데 여기에 필터를 사용했다. 로그인이 성공한 후 다음과 같이 사용자 이름을 설정합니다.HTTPRequest.getSession은 세션이 무효화 된 후 새로운 세션을 반환합니다.

HttpSession httpSession = request.getSession(); 
httpSession.setAttribute(SESSION_USERNAME, subject); 

유효성을 검사 할 때 다음 코드를 사용합니다.

HttpServletRequest request = (HttpServletRequest) req; 
HttpSession session = request.getSession(); 
String userName = (String) session.getAttribute(SSOHelper.SESSION_USERNAME); 

if (userName == null && request.getRequestURI().contains("dashboard.xhtml")) { 

follwing을 로그 아웃로 구현

request.getSession() (무효).;

문제는 이것이 처음으로 작동하는 것입니다. 두 번째로 로그인을 계속합니다. 요청 당 세션이 생성 된 것 같습니다.

답변

0

점 (.)없이 호스트 이름을 정의 할 때 문제가있는 것 같습니다. 예를 들어 필자는 테스트를 위해 localhost를 사용했습니다. 도메인 이름이 malaka.com 인 호스트 파일에 항목을 추가하고 웹 응용 프로그램에 액세스하는 데 사용되면 문제가 해결되었습니다.