code: private void exception(Throwable e)
      {
          try
          {
              _persistent=false;
              int error_code=HttpResponse.__500_Internal_Server_Error;
              
              if (e instanceof HttpException)
              {
                  error_code=((HttpException)e).getCode();
                  
                  if (_request==null)
                      log.warn(e.toString());
                  else
                      log.warn(_request.getRequestLine()+" "+e.toString());
                  log.debug(LogSupport.EXCEPTION,e);
              }
              else if (e instanceof EOFException)
              {
                  LogSupport.ignore(log,e);
                  return;
              }
              else
              {
                  _request.setAttribute("javax.servlet.error.exception_type",e.getClass());
                  _request.setAttribute("javax.servlet.error.exception",e);
                  
                  if (_request==null)
                      log.warn(LogSupport.EXCEPTION,e);
                  else
                      log.warn(_request.getRequestLine(),e);
              }
              
              if (_response != null && !_response.isCommitted())
              {
                  _response.reset();
                  _response.removeField(HttpFields.__TransferEncoding);
                  _response.setField(HttpFields.__Connection,HttpFields.__Close);
                  _response.sendError(error_code);
              }
          }
          catch(Exception ex)
          {
              LogSupport.ignore(log,ex);
          }
      }
docs: /* Exception reporting policy method.
  @param e the Throwable to report.