BUG? Upload mehrerer Bilder im Backend gleichzeitig 6.4.10.1 - Probleme mit Cover Bild - Cover picture mandatory?

Folgender Fall:

  • existierender Artikel mit Bildern
  • Bildern entfernen
  • MEHRERE Bilder gleichzeitig hochladen
  • bis hierher: alles in Ordnung.
  • SPEICHER klicken → Fehlermeldung im Backend: „Bitte füllen alle Pflichtfelder aus“

Lösung: Bilder einzeln nacheinander hochladen.

Der Fehler tritt auch beim Upload über die API auf!

Fehlermeldung im LOG:
[2022-04-27T07:07:21.701660+00:00] php.CRITICAL: Uncaught Error: Call to a member function getFlag() on null {„exception“:"[object] (Error(code: 0): Call to a member function getFlag() on null at /var/www/html/schwarzwaldmetzgerei/vendor/shopware/core/Framework/DataAbstractionLayer/Write/EntityWriter.php:272)"}
[2022-04-27T07:07:21.702368+00:00] request.CRITICAL: Uncaught PHP Exception Error: „Call to a member function getFlag() on null“ at /var/www/html/schwarzwaldmetzgerei/vendor/shopware/core/Framework/DataAbstractionLayer/Write/EntityWriter.php line 272 {„exception“:"[object] (Error(code: 0): Call to a member function getFlag() on null at /var/www/html/schwarzwaldmetzgerei/vendor/shopware/core/Framework/DataAbstractionLayer/Write/EntityWriter.php:272)"}
[2022-04-27T07:07:34.185042+00:00] php.CRITICAL: Uncaught Error: Call to a member function getFlag() on null {„exception“:"[object] (Error(code: 0): Call to a member function getFlag() on null at /var/www/html/schwarzwaldmetzgerei/vendor/shopware/core/Framework/DataAbstractionLayer/Write/EntityWriter.php:272)"}
[2022-04-27T07:07:34.185734+00:00] request.CRITICAL: Uncaught PHP Exception Error: „Call to a member function getFlag() on null“ at /var/www/html/schwarzwaldmetzgerei/vendor/shopware/core/Framework/DataAbstractionLayer/Write/EntityWriter.php line 272 {„exception“:"[object] (Error(code: 0): Call to a member function getFlag() on null at /var/www/html/schwarzwaldmetzgerei/vendor/shopware/core/Framework/DataAbstractionLayer/Write/EntityWriter.php:272)"}

Das ist sehr interessant.

Ich bekomme eine sehr ähnliche Fehlermeldung, jedoch an einer ganz anderen Stelle.

Wir nutzen die API um neue Produkte zu synchronisieren. Bestehende Produkte werden dabei geupdated. Damit die Bilder auch immer aktuell sind, löschen wir dabei die Bildzuweisung und setzen Sie erneut.

Wir nutzen dafür /_action/sync so wie es in der Dokumentation als Beispiel genannt wird:

"unassign-media": {
        "entity": "product_media",
        "action": "delete",
        "payload": [
            { "id": "5f78f2d4b19f49648eb1b38881463da0" },
            { "id": "18ada8e085d240369d06bb4b11eed3b5" }
        ]
    }

Das erzeugt ebenfalls einen 500 Fehler mit „Uncaught Error: Call to a member function getFlag() on null“.

Scheinbar hat sich hier ein großer Fehler eingeschlichen.

Deckt sich mit unserer Messung. Bemerkt haben wir den Fehler beim AUSTAUSCHEN VON BILDERN über unsere Multichannel-Software. Diese macht via Api unserer Ansicht nach genau das selbe. Die mögliche Ursache bei Shopware haben wir dann über das Verhalten im Backend gefunden.

Hängt das mit dem hier zusammen?

Im Backend umgeht man das so:

  • alle Bilder (AUSSER BILD1) bearbeiten/tauschen/etc.
  • Bild 2 zum Cover benennen - speichern
  • Bild 1 löschen.

Inzwischen wissen wir, dass unser Shop ein „COVER“-Bild verpflichtend voraussetzt.

Leider ist das bei einer Neuinstallation scheinbar nicht der Fall. Bleibt die Frage, wie man dieses Pflichtfeld ändern kann und wo?

Hallo in die Runde.
Das Problem ist mit Version 6.4.13 verschwunden!
Bilderupload geht wieder ganz normal. Keinerlei Fehlermeldungen.
Vielleicht wurde es als Bug erkannt und gelöst?
Verbesserungsvorschlag: Eine Rückmeldung von Shopware wäre ganz nett gewesen.

Du kannst im Changelog nachsehen, was sich geändert hat: Shopware Changelog Shopware 6