저는 여가 시간에는 잠깐 동안 자바와 스프링을 공부 했으므로 아직 마스터 자바도 스프링도 없습니다.SimpleUrlAuthenticationFailureHandler를 재정의하는 것에 대한 설명
웹 프로젝트의 경우 자바와 스프링을 공부하기 위해 SimpleUrlAuthenticationFailureHandlerm
을 확장해야했습니다. 내 자신의 onAuthenticationFailure()...
방법에 SimpleUrlAuthenticationFailureHandler
및 최우선 onAuthenticationFailure
을 확장 한 후 나는 super.onAuthenticationFailure(...)
메소드를 호출 한 이유는 분명하지 무엇
입니다.
아마도 자바의 주요 규칙 중 하나를 얻지 못했습니다. 여기
는 SimpleUrlAuthenticationFailureHandler의 메소드를 오버라이드 (override)하려고에 대한public class CustomAuthenticationFailureHandler extends SimpleUrlAuthenticationFailureHandler {
@Override
public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception) throws IOException, ServletException {
if(exception.getClass().isAssignableFrom(BadCredentialsException.class)) {
setDefaultFailureUrl("/url1");
}
else if (exception.getClass().isAssignableFrom(DisabledException.class)) {
setDefaultFailureUrl("/url2");
}
else if (exception.getClass().isAssignableFrom(SessionAuthenticationException.class)) {
setDefaultFailureUrl("/url3");
}
super.onAuthenticationFailure(request, response, exception); //why this???
}
}
super.onAuthenticationFailure (request, response, exception);을 호출하기 전에 정확히 무엇을해야합니까? – Unknown
내 게시물을 편집했습니다. 어쨌든 예외 유형을 확인하고 사용자를 특정 페이지로 리디렉션합니다. – MDP
여기에서는 기본 URL 만 설정합니다. 따라서 오류가 발생하면 리디렉션 논리를 작성해야합니다. 그 논리는 SimpleUrlAuthenticationFailureHandler 클래스로 작성됩니다. 따라서 super.onAuthenticationFailure 메소드를 호출해야합니다. – Unknown