일반(세션)로그인 에서 세션을 확인하려니 null이 뜹니다.
- 작성자 :
- 김*문
- 작성일 :
- 2016-08-03 20:22:21
- 조회수 :
- 2,231
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
3.5버전으로 Device API project생성후 로그인 기능을 추가하고 있는데
처음 앱으로 로그인 하고 세션을 저장한 후에.
다른 mapping-url 로 접속 후 세션을 확인하려고 하려면 null 이 뜹니다.
사용방법이 잘못된것인지.... 설정이 잘못 된걸까요?
Device API project 생성당시의 web.xml을 그대로 사용하고 있습니다.
소스는 그림으로 첨부합니다.
web.xml 에 세션 시간은 늘려두었습니다.
<session-config>
<session-timeout>100</session-timeout>
</session-config>
context-egovuserdetailshelper.xml 추가
<!--인증된 유저의 LoginVO, 권한, 인증 여부를 확인 할 수있는 서비스 클래스-->
<bean id="egovUserDetailsHelper" class="egovframework.com.cmm.util.EgovUserDetailsHelper">
<property name="egovUserDetailsService">
<!-- 원하는 bean id를 아래에 ref 태그에 적용한다 -->
<ref bean="egovUserDetailsSecurityService" />
</property>
</bean>
<!-- 1. 세션을 이용한 인증을 사용하는 빈 -->
<bean id="egovUserDetailsSessionService" class="egovframework.com.cmm.service.impl.EgovUserDetailsSessionServiceImpl"/>
처음 앱으로 로그인 하고 세션을 저장한 후에.
다른 mapping-url 로 접속 후 세션을 확인하려고 하려면 null 이 뜹니다.
사용방법이 잘못된것인지.... 설정이 잘못 된걸까요?
Device API project 생성당시의 web.xml을 그대로 사용하고 있습니다.
소스는 그림으로 첨부합니다.
web.xml 에 세션 시간은 늘려두었습니다.
<session-config>
<session-timeout>100</session-timeout>
</session-config>
context-egovuserdetailshelper.xml 추가
<!--인증된 유저의 LoginVO, 권한, 인증 여부를 확인 할 수있는 서비스 클래스-->
<bean id="egovUserDetailsHelper" class="egovframework.com.cmm.util.EgovUserDetailsHelper">
<property name="egovUserDetailsService">
<!-- 원하는 bean id를 아래에 ref 태그에 적용한다 -->
<ref bean="egovUserDetailsSecurityService" />
</property>
</bean>
<!-- 1. 세션을 이용한 인증을 사용하는 빈 -->
<bean id="egovUserDetailsSessionService" class="egovframework.com.cmm.service.impl.EgovUserDetailsSessionServiceImpl"/>
A
김영문님 안녕하세요.
표준프레임워크센터입니다.
세션을 체크하는 방법은 아래 코드를 적용해보시기 바랍니다.
// 1. Spring Security 사용자권한 처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if(!isAuthenticated) {
model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
return "egovframework/com/uat/uia/EgovLoginUsr";
}
LoginVO user = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
내부에서 모바일 템플릿 프로젝트의 테스트를 진행한 결과
로그인 화면(/uat/uia/egovLoginUsr.mdo)에서 로그인을 한 뒤
협업 > 일반게시판 > 등록 페이지(/cop/bbs/addBoardArticle.mdo)에 로그를 표시하여 확인한 결과
로그인 여부가 정상적으로 확인되었습니다.
다시 확인해보시기 바랍니다.
테스트는 기본 모바일 웹 공통컴포넌트 로그인으로 테스트하였습니다.
보내주신 소스는 커스터마이징이 들어가 있어 정확한 답변을 드리기가 어렵습니다.
감사합니다.
표준프레임워크센터입니다.
세션을 체크하는 방법은 아래 코드를 적용해보시기 바랍니다.
// 1. Spring Security 사용자권한 처리
Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
if(!isAuthenticated) {
model.addAttribute("message", egovMessageSource.getMessage("fail.common.login"));
return "egovframework/com/uat/uia/EgovLoginUsr";
}
LoginVO user = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser();
내부에서 모바일 템플릿 프로젝트의 테스트를 진행한 결과
로그인 화면(/uat/uia/egovLoginUsr.mdo)에서 로그인을 한 뒤
협업 > 일반게시판 > 등록 페이지(/cop/bbs/addBoardArticle.mdo)에 로그를 표시하여 확인한 결과
로그인 여부가 정상적으로 확인되었습니다.
다시 확인해보시기 바랍니다.
테스트는 기본 모바일 웹 공통컴포넌트 로그인으로 테스트하였습니다.
보내주신 소스는 커스터마이징이 들어가 있어 정확한 답변을 드리기가 어렵습니다.
감사합니다.