if (t instanceof HttpStatusAwareException) {
routeContext.getResponse().setStatus(((HttpStatusAwareException) t).getStatus());
}
final Throwable rootCause = Throwables.getRootCause(t);
final Route errorRoute = routeContext.getRoutes().routeFor(rootCause);
final RouteContext errorContext = new RouteContext(errorRoute, routeContext.getRequest(), routeContext.getResponse(), routeContext.getRoutes());
final Object result = invokeErrorRoute(errorContext, rootCause);
routeContext.getRequest().setAttribute(ErrorRoute.DEFAULT.getExceptionAttrName(), rootCause);
responders.respond(errorContext, result);
}
}