protected Event handle(final Exception exception, final RequestContext requestContext) {
        val handlers = webflowExceptionHandlers
            .stream()
            .filter(BeanSupplier::isNotProxy)
            .filter(Unchecked.predicate(handler -> handler.supports(exception, requestContext)))
            .toList();

        return handlers
            .stream()
            .map(Unchecked.function(handler -> handler.handle(exception, requestContext)))
            .filter(Objects::nonNull)
            .findFirst()
            .orElseGet(this::error);
    }
Maps an authentication exception onto a state name.
Also sets an ERROR severity message in the message context.

@param exception      Authentication error to handle.
@param requestContext the spring  context
@return Name of next flow state to transition to or {@value CasWebflowExceptionCatalog#UNKNOWN}
core/cas-server-core-webflow-api/src/main/java/org/apereo/cas/web/flow/actions/AuthenticationExceptionHandlerAction.java