LoginException — 로그인 예외
LoginException — 로그인 예외 (기본)
LoginException은 로그인 과정에서 발생하는 기본 예외예요. 모든 로그인 관련 예외의 부모 클래스 역할을 해요.
본문
public class LoginException extends GeneralSecurityException
알려진 직접 하위 클래스로 AccountException, CredentialException, FailedLoginException이 있어요.
생성자
LoginException()— 상세 메시지 없이LoginException을 생성해요.LoginException(String msg)— 지정된 상세 메시지로 생성해요.msg는 상세 메시지예요.
예외 계층 이해하기
LoginException은 GeneralSecurityException → Exception → Throwable 계층을 거쳐요. GeneralSecurityException을 상속받는 것이 특징인데, 이는 로그인 오류가 "보안 일반" 범주의 오류라는 것을 의미해요.
로그인 관련 예외들의 공통 조상이므로, 코드에서는 catch (LoginException e)로 계정·자격 증명·실패 등 다양한 로그인 예외를 한 번에 잡을 수 있어요. 그리고 더 세부적인 처리가 필요하면 하위 클래스(AccountExpiredException, FailedLoginException 등)를 개별로 잡으면 돼요.
JAAS 로그인 흐름에서 LoginContext.login() 메서드는 인증이 실패하면 이 예외(또는 하위 클래스)를 던져요.
관련 클래스
LoginContext— 로그인을 수행하는 진입점