Hi, I'm running Odoo 16 community edition and after adding additional media to a product, when I click Save Manually, I have the following Odoo Server Error.
This error also shows when adding the image through the shop product editor.
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/http.py", line 1579, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 134, in retrying
result = func()
File "/usr/lib/python3/dist-packages/odoo/http.py", line 1608, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 1805, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "/usr/lib/python3/dist-packages/odoo/addons/website/models/ir_http.py", line 235, in _dispatch
response = super()._dispatch(endpoint)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_http.py", line 144, in _dispatch
result = endpoint(**request.params)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 698, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/dataset.py", line 42, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 461, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 448, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/addons/product/models/product_template.py", line 445, in write
res = super(ProductTemplate, self).write(vals)
File "/usr/lib/python3/dist-packages/odoo/addons/mail/models/mail_thread.py", line 315, in write
result = super(MailThread, self).write(values)
File "/usr/lib/python3/dist-packages/odoo/addons/mail/models/mail_activity_mixin.py", line 241, in write
return super(MailActivityMixin, self).write(vals)
File "/usr/lib/python3/dist-packages/odoo/addons/website/models/mixins.py", line 220, in write
return super(WebsitePublishedMixin, self).write(values)
File "/usr/lib/python3/dist-packages/odoo/addons/rating/models/rating_mixin.py", line 104, in write
result = super(RatingMixin, self).write(values)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3737, in write
field.write(self, value)
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 4225, in write
return self.write_batch([(records, value)])
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 4246, in write_batch
return self.write_real(records_commands_list, create)
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 4425, in write_real
flush()
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 4387, in flush
comodel.create(to_create)
File "", line 2, in create
File "/usr/lib/python3/dist-packages/odoo/api.py", line 410, in _model_create_multi
return create(self, arg)
File "/usr/lib/python3/dist-packages/odoo/addons/website_sale/models/product_image.py", line 71, in create
return super().create(normal_vals) + super(ProductImage, context_without_template).create(variant_vals_list)
File "", line 2, in create
File "/usr/lib/python3/dist-packages/odoo/api.py", line 410, in _model_create_multi
return create(self, arg)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_fields.py", line 665, in create
recs = super().create(vals_list)
File "", line 2, in create
File "/usr/lib/python3/dist-packages/odoo/api.py", line 410, in _model_create_multi
return create(self, arg)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3936, in create
records = self._create(data_list)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 4173, in _create
field.create([
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 2448, in create
new_value = self._image_process(value)
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 2480, in _image_process
return base64.b64encode(image_process(img,
File "/usr/lib/python3/dist-packages/odoo/tools/image.py", line 264, in image_process
image = ImageProcess(source, verify_resolution)
File "/usr/lib/python3/dist-packages/odoo/tools/image.py", line 90, in __init__
self.image = image_fix_orientation(self.image)
File "/usr/lib/python3/dist-packages/odoo/tools/image.py", line 377, in image_fix_orientation
exif = getexif()
File "/usr/lib/python3/dist-packages/PIL/PngImagePlugin.py", line 977, in getexif
return super().getexif()
File "/usr/lib/python3/dist-packages/PIL/Image.py", line 1320, in getexif
root = xml.etree.ElementTree.fromstring(xmp_tags)
File "/usr/lib/python3.9/xml/etree/ElementTree.py", line 1347, in XML
parser.feed(text)
xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 1, column 5
The above server error caused the following client error:
nullAny ideas on what this is about and how to fix it?
can you post the image you use ?
Hi Nicolas. Thank you for your comment. I was using a png image over 300 kb, and meanwhile I found that Odoo was recommending to load a lower sized image. So I converted this to jpg (with around 50kb) and it already worked.
You can find the image that didn't work at:
https://ibb.co/JC1xW4K
You can find the image that worked at: https://www.relationalgames.com/web/image/product.image/5/image_1024/Caixa%20Papo%20a%20Papo?unique=dc629ad.