0
RESTORE_VIEW 전에 실행되는 PhaseListener에서 작업 중이며 현재 세션에서 처음 실행되는지 여부를 알아야합니다. 사용자 로그인 상태 유지를 위해 자동 로그인을하십시오).JSF 2.2 : PhaseListener는 세션의 첫 번째 요청 전에 만 실행해야합니다.
나를위한 힌트가 있습니까?
RESTORE_VIEW 전에 실행되는 PhaseListener에서 작업 중이며 현재 세션에서 처음 실행되는지 여부를 알아야합니다. 사용자 로그인 상태 유지를 위해 자동 로그인을하십시오).JSF 2.2 : PhaseListener는 세션의 첫 번째 요청 전에 만 실행해야합니다.
나를위한 힌트가 있습니까?
예, 그런 일을 할 수 있습니다.
@Override
public PhaseId getPhaseId() {
return PhaseId.RESTORE_VIEW;
}
@Override
public void beforePhase(PhaseEvent event) {
FacesContext ctx = FacesContext.getCurrentInstance();
if (!ctx.isPostback()) {
authRet = // check for active session
if (!authRet) {
if (...)// check for cookies { //create auth}
else { // redirect to login }
}
}
나는 순간에 무한 루프 만드는거야 :! 나는 같은 단계 리스너가! 포스트 백 리즈가 다시 인 리디렉션을 다시 무엇 리디렉션 어떤 리즈 다시 게시 포스트 백을 ... 을 어떻게 해! 너 authRet받을거야? 세션에 유효한 사용자가 있는지 확인하는 것? – mpunktw
좋아, 그거야. 내 상태는 다음과 같습니다 if (! ctx.potsback() && loginController! = null && loginController.getCurrentUser()! = null) ... – mpunktw
일반적으로 요청 URL이 이런 종류의 문제에 대한 로그인 URL인지 확인합니다. 답이 맞다면 옳은 대답으로 받아 들여주세요. 고맙습니다! – Tushee