This question has been flagged
4 Replies
10844 Views

http//.../shop/payment/validate >> 500: Internal Server Error

I see this error after confirm the Store Order with Pay Now. I have Wire Transfer as payment method.

 

Error from Log:

2014-07-30 20:28:42,550 1229 INFO 8.0 werkzeug: 127.0.0.1 - - [30/Jul/2014 20:28:42] "POST /shop/payment/transaction/1 HTTP/1.1" 200 -
2014-07-30 20:28:42,646 1229 INFO 8.0 openerp.addons.payment_transfer.controllers.main: Beginning form_feedback with post data {'amount': u'15.74',
 'currency': u'EUR',
 'reference': u'SO016',
 'return_url': u'/shop/payment/validate'}
2014-07-30 20:28:42,653 1229 INFO 8.0 openerp.addons.payment_transfer.models.payment_acquirer: Validated transfer payment for tx SO016: set as pending
2014-07-30 20:28:42,660 1229 INFO 8.0 werkzeug: 127.0.0.1 - - [30/Jul/2014 20:28:42] "POST /payment/transfer/feedback HTTP/1.1" 302 -
2014-07-30 20:28:44,272 1229 ERROR 8.0 openerp.addons.website.models.ir_http: 500 Internal Server Error:

Traceback (most recent call last):
  File "/opt/odoo8/odoo8-server/addons/website/models/ir_http.py", line 180, in _handle_exception
    response = super(ir_http, self)._handle_exception(exception)
  File "/opt/odoo8/odoo8-server/openerp/addons/base/ir/ir_http.py", line 104, in _handle_exception
    return request._handle_exception(exception)
  File "/opt/odoo8/odoo8-server/openerp/http.py", line 558, in _handle_exception
    return super(HttpRequest, self)._handle_exception(exception)
  File "/opt/odoo8/odoo8-server/openerp/addons/base/ir/ir_http.py", line 131, in _dispatch
    result = request.dispatch()
  File "/opt/odoo8/odoo8-server/openerp/http.py", line 570, in dispatch
    r = self._call_function(**self.params)
  File "/opt/odoo8/odoo8-server/openerp/http.py", line 311, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/openerp/service/model.py", line 113, in wrapper
    return f(dbname, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/openerp/http.py", line 308, in checked_call
    return self.endpoint(*a, **kw)
  File "/opt/odoo8/odoo8-server/openerp/http.py", line 685, in __call__
    return self.method(*args, **kw)
  File "/opt/odoo8/odoo8-server/openerp/http.py", line 360, in response_wrap
    response = f(*args, **kw)
  File "/opt/odoo8/odoo8-server/addons/website_sale/controllers/main.py", line 741, in payment_validate
    composer_id = request.registry['mail.compose.message'].create(cr, SUPERUSER_ID, composer_values, context=email_ctx)
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/addons/mail/mail_message.py", line 800, in create
    newid = super(mail_message, self).create(cr, uid, values, context)
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 297, in old_api
    result = method(recs, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/openerp/models.py", line 3867, in create
    vals = self._add_missing_default_values(vals)
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 202, in wrapper
    return new_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 429, in new_api
    result = method(self._model, cr, uid, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/openerp/models.py", line 1798, in _add_missing_default_values
    defaults = self.default_get(cr, uid, list(missing_defaults), context)
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/addons/email_template/wizard/mail_compose_message.py", line 54, in default_get
    res.get('model'), res.get('res_id'), context=context
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/addons/email_template/wizard/mail_compose_message.py", line 101, in onchange_template_id
    values = self.generate_email_for_composer_batch(cr, uid, template_id, [res_id], context=context)[res_id]
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/addons/email_template/wizard/mail_compose_message.py", line 163, in generate_email_for_composer_batch
    template_values = self.pool.get('email.template').generate_email_batch(cr, uid, template_id, res_ids, fields=fields, context=ctx)
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/addons/email_template/email_template.py", line 488, in generate_email_batch
    result, format = self.pool['report'].get_pdf(cr, uid, [res_id], report_service, context=ctx), 'pdf'
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/addons/report/models/report.py", line 253, in get_pdf
    paperformat, specific_paperformat_args, save_in_attachment
  File "/opt/odoo8/odoo8-server/openerp/api.py", line 204, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo8/odoo8-server/addons/report/models/report.py", line 417, in _run_wkhtmltopdf
    process = subprocess.Popen(wkhtmltopdf, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
  File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

2014-07-30 20:28:44,368 1229 INFO 8.0 werkzeug: 127.0.0.1 - - [30/Jul/2014 20:28:44] "GET /shop/payment/validate HTTP/1.1" 500 -

Avatar
Discard
Best Answer

You must install wkhtmltopdf program on your computer to generate pdf

http://consultantodoo.com/

Avatar
Discard

This answer is totally not relevant and has nothing to do with this bug.

IT IS relevant as you can see in stacktrace of this problem: File "/opt/odoo8/odoo8-server/addons/report/models/report.py", line 417, in _run_wkhtmltopdf process = subprocess.Popen(wkhtmltopdf, stdout=subprocess.PIPE, stderr=subprocess.PIPE) Maybe you have different problem there.

Best Answer

Hey

This question has already been asked here: https://www.odoo.com/forum/help-1/question/internal-server-error-500-in-ecommerce-module-with-payment-method-wire-transfer-odoo-v8-60638

The bug is also reported at Github, here: https://github.com/odoo/odoo/issues/1956

Avatar
Discard
Best Answer

I was getting the same error and after installing wkhtmltopdf this error went away.

Avatar
Discard
Best Answer

A 500 internal server error is, as the name implies, a general problem with the website's server. More than likely, this means there's an issue or temporary glitch with the website's programming. Some potential causes of a 500 internal server error include: Corrupted or broken. Wait for some time. maybe you can try after clearing some cache and trying again.

Avatar
Discard