code: def handleException(exception):
      
      serverException = exception
      if not isinstance(exception, exceptions.BaseServerException):
          with app.test_request_context():
              app.log_exception(exception)
          serverException = exceptions.getServerError(exception)
      error = serverException.toProtocolElement()
      # If the exception is being viewed by a web browser, we can render a nicer
      # view.
      if flask.request and 'Accept' in flask.request.headers and \
              flask.request.headers['Accept'].find('text/html') != -1:
          message = "<h1>Error {}</h1><pre>{}</pre>".format(
                      serverException.httpStatus,
                      protocol.toJson(error))
          if serverException.httpStatus == 401 \
                  or serverException.httpStatus == 403:
              message += "Please try <a href=\"/login\">logging in</a>."
          return message
      else:
          responseStr = protocol.toJson(error)
          return getFlaskResponse(responseStr, serverException.httpStatus)
docs: Handles an exception that occurs somewhere in the process of handling
      a request.