diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index dd7ea970627..6af0268b3bf 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -268,13 +268,18 @@ class Database(openerpweb.Controller): params['db_lang'], params['create_admin_pwd'] ) - + try: return req.session.proxy("db").create(*create_attrs) except xmlrpclib.Fault, e: - if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied': - return {'error': e.faultCode, 'title': 'Create Database'} - return {'error': 'Could not create database !', 'title': 'Create Database'} + if e.faultCode and isinstance(e.faultCode, str)\ + and e.faultCode.split(':')[0] == 'AccessDenied': + return {'error': e.faultCode, 'title': 'Database creation error'} + return { + 'error': "Could not create database '%s': %s" % ( + params['db_name'], e.faultString), + 'title': 'Database creation error' + } @openerpweb.jsonrequest def drop(self, req, fields):