private void minimalErrorResponse(Throwable failure) { try { int code = 500; Integer status=(Integer)_request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE); if (status!=null) code = status.intValue(); else { Throwable cause = unwrap(failure,BadMessageException.class); if (cause instanceof BadMessageException) code = ((BadMessageException)cause).getCode(); } _response.reset(true); _response.setStatus(code); _response.flushBuffer(); } catch (Throwable x) { if (x != failure) failure.addSuppressed(x); abort(failure); } }
Throwable cause = _channel.unwrap(th,BadMessageException.class,UnavailableException.class); if (cause instanceof BadMessageException)