[FIX] http.py: no traceback for SessionExpiredException
authorMack <mackz@sina.com>
Tue, 11 Nov 2014 14:26:33 +0000 (22:26 +0800)
committerChristophe Simonis <chs@odoo.com>
Tue, 2 Dec 2014 17:34:28 +0000 (18:34 +0100)
Rebase and close #3618

openerp/http.py

index 3435204..eddbcb6 100644 (file)
@@ -516,16 +516,19 @@ class JsonRequest(WebRequest):
         try:
             return super(JsonRequest, self)._handle_exception(exception)
         except Exception:
-            if not isinstance(exception, openerp.exceptions.Warning):
+            if not isinstance(exception, (openerp.exceptions.Warning, SessionExpiredException)):
                 _logger.exception("Exception during JSON request handling.")
             error = {
                     'code': 200,
-                    'message': "OpenERP Server Error",
+                    'message': "Odoo Server Error",
                     'data': serialize_exception(exception)
             }
             if isinstance(exception, AuthenticationError):
                 error['code'] = 100
-                error['message'] = "OpenERP Session Invalid"
+                error['message'] = "Odoo Session Invalid"
+            if isinstance(exception, SessionExpiredException):
+                error['code'] = 100
+                error['message'] = "Odoo Session Expired"
             return self._json_response(error=error)
 
     def dispatch(self):