Error when untoggling a default search view button

Bug #844106 reported by James Jesudason
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Odoo Web Client
Invalid
Undecided
Unassigned

Bug Description

When going to any search view e.g. Sales > Address Book > Customers, and deselecting a default search view button an error is generated. This only happens in the web client - the GTK client works fine. E.g. untoggling the 'Customers' button in the Customers view gives the following error:

<type 'exceptions.AttributeError'> Python 2.6.5: /usr/bin/python
Wed Sep 7 17:16:54 2011

A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.
 /usr/lib/pymodules/python2.6/cherrypy/_cprequest.py in respond(self=<cherrypy._cprequest.Request object>, path_info='/openerp/listgrid/get')
  604 if self.handler:
  605 self.stage = 'handler'
  606 cherrypy.response.body = self.handler()
  607
  608 self.stage = 'before_finalize'
global cherrypy = <module 'cherrypy' from '/usr/lib/pymodules/python2.6/cherrypy/__init__.pyc'>, cherrypy.response = <cherrypy._ThreadLocalProxy object>, cherrypy.response.body = [], self = <cherrypy._cprequest.Request object>, self.handler = <cherrypy._cpdispatch.LateParamPageHandler object>
 /usr/lib/pymodules/python2.6/cherrypy/_cpdispatch.py in __call__(self=<cherrypy._cpdispatch.LateParamPageHandler object>)
   23 def __call__(self):
   24 try:
   25 return self.callable(*self.args, **self.kwargs)
   26 except TypeError, x:
   27 test_callable_spec(self.callable, self.args, self.kwargs)
self = <cherrypy._cpdispatch.LateParamPageHandler object>, self.callable = <function get>, self.args = (), self.kwargs = {'_terp_action_id': '59', '_terp_concurrency_info': "('res.partner,53', '2011-09-07 16:42:20.00163')", '_terp_context': 'undefined', '_terp_count': '227', '_terp_domain': '[]', '_terp_editable': 'True', '_terp_filter_domain': '[]', '_terp_filters_context': '', '_terp_group_by_ctx': '[]', '_terp_id': 'False', ...}
 /srv/erp-staging.canonical.com/staging/web/addons/openerp/controllers/utils.py in wrapper(*args=(), **kw={'_terp_action_id': '59', '_terp_concurrency_info': "('res.partner,53', '2011-09-07 16:42:20.00163')", '_terp_context': 'undefined', '_terp_count': '227', '_terp_domain': '[]', '_terp_editable': 'True', '_terp_filter_domain': '[]', '_terp_filters_context': '', '_terp_group_by_ctx': '[]', '_terp_id': 'False', ...})
  106 # User is logged in; allow access
  107 clear_login_fields(kw)
  108 return fn(*args, **kw)
  109 else:
  110 action = kw.get('login_action', '')
fn = <bound method List.get of <openerp.controllers.listgrid.List object>>, args = (), kw = {'_terp_action_id': '59', '_terp_concurrency_info': "('res.partner,53', '2011-09-07 16:42:20.00163')", '_terp_context': 'undefined', '_terp_count': '227', '_terp_domain': '[]', '_terp_editable': 'True', '_terp_filter_domain': '[]', '_terp_filters_context': '', '_terp_group_by_ctx': '[]', '_terp_id': 'False', ...}
 /srv/erp-staging.canonical.com/staging/web/openobject/tools/_expose.py in func_wrapper(*args=(<openerp.controllers.listgrid.List object>,), **kw={'_terp_action_id': '59', '_terp_concurrency_info': "('res.partner,53', '2011-09-07 16:42:20.00163')", '_terp_context': 'undefined', '_terp_count': '227', '_terp_domain': '[]', '_terp_editable': 'True', '_terp_filter_domain': '[]', '_terp_filters_context': '', '_terp_group_by_ctx': '[]', '_terp_id': 'False', ...})
  186 raise cherrypy.HTTPError(405)
  187
  188 res = func(*args, **kw)
  189 if format == 'json' or (allow_json and 'allow_json' in cherrypy.request.params):
  190 cherrypy.response.headers['Content-Type'] = 'text/javascript'
global res = '/srv/erp-staging.canonical.com/staging/web/openobject/widgets/templates/textarea.mako', func = <function get>, args = (<openerp.controllers.listgrid.List object>,), kw = {'_terp_action_id': '59', '_terp_concurrency_info': "('res.partner,53', '2011-09-07 16:42:20.00163')", '_terp_context': 'undefined', '_terp_count': '227', '_terp_domain': '[]', '_terp_editable': 'True', '_terp_filter_domain': '[]', '_terp_filters_context': '', '_terp_group_by_ctx': '[]', '_terp_id': 'False', ...}
 /srv/erp-staging.canonical.com/staging/web/addons/openerp/controllers/listgrid.py in get(self=<openerp.controllers.listgrid.List object>, **kw={'_terp_action_id': '59', '_terp_concurrency_info': "('res.partner,53', '2011-09-07 16:42:20.00163')", '_terp_context': 'undefined', '_terp_count': '227', '_terp_domain': '[]', '_terp_editable': 'True', '_terp_filter_domain': '[]', '_terp_filters_context': '', '_terp_group_by_ctx': '[]', '_terp_id': 'False', ...})
  282 frm = res['form']
  283 else:
  284 frm = form.Form().create_form(params)
  285
  286 if params.view_type == 'graph':
frm undefined, global form = <module 'openerp.controllers.form' from '/srv/er...staging/web/addons/openerp/controllers/form.pyc'>, form.Form = <class 'openerp.controllers.form.Form'>, ).create_form = <unbound method Form.create_form>, params = {'_terp_offset': 0, '_terp_filters_context': '',..._string': 'Customers', '_terp_filter_domain': []}
 /srv/erp-staging.canonical.com/staging/web/addons/openerp/controllers/form.py in create_form(self=<openerp.controllers.form.Form object>, params={'_terp_offset': 0, '_terp_filters_context': '',..._string': 'Customers', '_terp_filter_domain': []}, tg_errors=None)
  184 params.view_type = params.view_type or params.view_mode[0]
  185
  186 return tw.form_view.ViewForm(params, name="view_form", action=self.path + "/save")
  187
  188 @expose(template="/openerp/controllers/templates/form.mako")
global tw = <module 'openerp.widgets' from '/srv/erp-staging...staging/web/addons/openerp/widgets/__init__.pyc'>, tw.form_view = <module 'openerp.widgets.form_view' from '/srv/e...taging/web/addons/openerp/widgets/form_view.pyc'>, tw.form_view.ViewForm = <class 'openerp.widgets.form_view.ViewForm'>, params = {'_terp_offset': 0, '_terp_filters_context': '',..._string': 'Customers', '_terp_filter_domain': []}, name undefined, action undefined, self = <openerp.controllers.form.Form object>, self.path = '/openerp/form'
 /srv/erp-staging.canonical.com/staging/web/addons/openerp/widgets/form_view.py in __init__(self=ViewForm, params={'_terp_offset': 0, '_terp_filters_context': '',..._string': 'Customers', '_terp_filter_domain': []}, **kw={'action': '/openerp/form/save', 'name': 'view_form'})
   63 if element not in search_param or len(element) == 1:
   64 if not isinstance(element,tuple):
   65 search_param.append(element)
   66 else:
   67 key, op, value = element
search_param = 'undefined', search_param.append undefined, element = 'u'

OpenERP version 6.1 trunk
server: revno 3574
addons: 4950
web: revno 4684

Revision history for this message
Dhruti Shastri(OpenERP) (dhs-openerp) wrote :

Hello James,

Thank you for reporting here. Unfortunately the OpenERP Web Client project is not going to be developed further after the 6.0 series. As of 6.1 a newer and better web front-end known as the OpenERP Web project[1] will be available.

Our R&D developers normally work in Launchpad to fix bugs for the next release, but there will be no next release for the current OpenERP Web Client. As our resources are limited, all further R&D efforts from the Web team are dedicated to finish the new 6.1 OpenERP Web project[1].

If you are interested, you should soon be able to beta-test the new OpenERP Web 6.1 (this will be announced on OpenERP Community channels).

Thank you for your contributions and for your understanding!

[1] https://launchpad.net/openerp-web
[2] http://bit.ly/openerp-bugs-faq

Changed in openobject-client-web:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.