Я реализовал AuthenticationFailureListener
для неудачного входа в систему с помощью ApplicationListener<AuthenticationFailureBadCredentialsEvent>
, и все мои события Bad Credentials расположены в одном и том же классе, очень удобно, я пытался добавить прослушиватель к ExpiredJwtException
или SignatureException
, но я не могу понять, какое событие вызвало, я пытался -
@Component
public class ApplicationEventListener implements ApplicationListener<ApplicationEvent>{
@Override
public void onApplicationEvent(ApplicationEvent event) {
System.out.println(event.toString()); //not printed when ExpiredJwtException thrown
}
}
чтобы поймать все ApplicationEvent
, но когда происходит одно из этих исключений, метод onApplicationEvent
не срабатывает.
Я могу поймать эти исключения, но я хочу обрабатывать их глобально, как BadCredentialsException
обрабатывается AuthenticationFailureBadCredentialsEvent
.
Попробовал AuthenticationFailureExpiredEvent
-
@Component
public class ApplicationEventListener implements ApplicationListener<AuthenticationFailureExpiredEvent>{
@Override
public void onApplicationEvent(AuthenticationFailureExpiredEvent event) {
System.out.println("Expired!!"); //same result
}
}
но все еще не работает.