Capturar exception sem ser com try-catch

Olá pessoal, alguém sabe como eu posso capturar uma exceção lançada assim:

throw new BadCredentialsException("Senha incorreta!");

Eu queria capturá-la com o PhaseListener ou algo do gênero, alguém sabe dizer se tem como capturar ela pelo PhaseListener?