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: null
Any 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.