Wenn sich Plugins beißen - und der Request plötzlich fehlt
In einem aktuellen Projekt hat sich mal wieder gezeigt, wie unterschiedlich Plugins mit Kontext umgehen: Im Frontend läuft alles sauber, in der Queue fliegt plötzlich ein Fehler – weil der Code davon ausgeht, dass immer ein HTTP-Request vorhanden ist.
Ist er aber nicht.
Bei Prozessen, die über die Message Queue laufen (zum Beispiel Abo-Verlängerungen oder automatisierte Bestellungen), gibt es keinen klassischen Request-Kontext. Wer dann ohne Prüfung auf den Request zugreift, bekommt eine saubere Null-Meldung um die Ohren.
Die Lösung war simpel: eine kleine Null-Prüfung – und schon funktioniert es im Web und in der Queue.
Ein gutes Beispiel aus der Shopware 6 Fehlersuche: Auch einfache Dinge wie $request->get(...) können kritisch werden, wenn die Umgebung sich ändert.
Und manchmal beißen sich Plugins eben, ohne dass es jemand böse meint.
Was läuft sonst gerade? Weitere laufende Themen ansehen