Neu Fehler JTL\\Catalog\\Category\\MenuItem::getImageWidth(): Return value must be of type int, null returned

fhinok

Aktives Mitglied
9. September 2021
5
0
Momentan häufen sich die folgenden Einträge in unserem Apache Log:
eventtechnik3000.ch [Fri Apr 26 07:35:38.690664 2024] [-:error] [1] [a] FastCGI: server "/home/clients/C_ID/.config/apache/eventtechnik3000.ch/.fpm/php5.external" stderr: PHP message: PHP Fatal error: Uncaught TypeError: JTL\\Catalog\\Category\\MenuItem::getImageWidth(): Return value must be of type int, null returned in /home/clients/C_ID/sites/ shop/includes/src/Media/MultiSizeImage.php:228
eventtechnik3000.ch [Fri Apr 26 07:35:38.690690 2024] [-:error] [1] [a] FastCGI: server "/home/clients/C_ID/.config/apache/eventtechnik3000.ch/.fpm/php5.external" stderr: Stack trace:
eventtechnik3000.ch [Fri Apr 26 07:35:38.690695 2024] [-:error] [1] [a] FastCGI: server "/home/clients/C_ID/.config/apache/eventtechnik3000.ch/.fpm/php5.external" stderr: #0 /home/clients/C_ID/sites/shop/templates_c/MyMove/cc5a21ebb43070d9559d7bc2625008e67ccec687_0.file.image.tpl.php(57): JTL\\Catalog\\Category\\MenuItem->getImageWidth('xs')
eventtechnik3000.ch [Fri Apr 26 07:35:38.690698 2024] [-:error] [1] [a] FastCGI: server "/home/clients/C_ID/.config/apache/eventtechnik3000.ch/.fpm/php5.external" stderr: #1 /home/clients/C_ID/sites/shop/includes/vendor/smarty/smarty/libs/sysplugins/smarty_internal_runtime_inheritance.php(248): Block_70981956966276edf2dac55_75770806->callBlock(Object(JTL\\Smarty\\JTLSmartyTemplateClass))
eventtechnik3000.ch [Fri Apr 26 07:35:38.690700 2024] [-:error] [1] [a] FastCGI: server "/home/clients/C_ID/.config/apache/eventtechnik3000.ch/.fpm/php5.external" stderr: #2 /home/clients/C_ID/sites/shop/includes/vendor/smarty/smarty/libs/sysplugins/smarty_internal_runtime_inheritance.php(184): Smarty_Internal_Runtime_Inheritance->callBlock(Object(Block_70981956966276edf2dac55_75770806), Object(JTL\\Smarty\\JTLSmartyTemplateClass))
eventtechnik3000.ch [Fri Apr 26 07:35:38.690850 2024] [fastcgi:error] [1] [a] FastCGI: server "/home/clients/C_ID/.config/apache/eventtechnik3000.ch/.fpm/php5.external" stderr: #3 /home/clien...Fatal error: Uncaught TypeError: JTL\\Catalog\\Category\\MenuItem::getImageWidth(): Return value must be of type int, null returned in /home/clients/C_ID/sites/shop/includes/src/Media/MultiSizeImage.php:228
Teilweise mehrere pro Sekunde, teilweise vergeht auch mehr Zeit zwischen den Einträgen. Die Bildgrösse bei JTL\\Catalog\\Category\\MenuItem->getImageWidth('xs') ist nicht immer dieselbe.
Leider kann ich den Fehler nicht gezielt reproduzieren.
Der Fehler trat bereits im Shop Version 5.2.4 auf, momentan sind wir auf 5.3.1.
Bei einer Google Suche nach "jtl shop MenuItem::getImageWidth()" tauchen zwei weiter Shops mit (wahrscheinlich) dem Problem auf.

Hatte sonst noch jemand solche Logeinträge?
Muss ich mich mit dem Problem an den Templateentwickler wenden?
Oder hat wer eine Idee, wo ich suchen könnte?
 

OliverS

Sehr aktives Mitglied
Mitarbeiter
1. April 2022
134
65
Hückelhoven
Meistens sollte es hier helfen alle Caches zu leeren, denn der Fehler wird durch ein ungültiges Bild verursacht. Entweder ein falsch gecachter Bildname, dann reicht das Leeren von Objekt- und Template- Cache (im Backend unter "Administration -> System -> Cache", oder durch ein tatsächlich fehlerhaftes Bild im Bildercache, dann muss dieser ebenfalls geleert werden (unter "Administration -> Fehlerbehebung -> Bilder").

Ich hatte dafür einen auch Hotfix entwickelt, den ich öfter erfolgreich eingesetzt habe:

In der includes/src/Media/MultiSizeImage.php folgende Zeilen (204-215)

PHP:
foreach (Image::getAllSizes() as $size) {
  $path = $this->generateImagePath($size, $number, $source);
  if (!\file_exists(\PFAD_ROOT . $path)) {
     $this->generateImage($size, $number, $source);
  }
  if (!\file_exists(\PFAD_ROOT . $path)) {
    $this->imageDimensions[$number][$size] = $settings[$this->getImageType()][$size];
   } else {
    [$width, $height, $type]               = \getimagesize(\PFAD_ROOT . $path);
    $this->imageDimensions[$number][$size] = ['width' => $width, 'height' => $height];
   }
}

ersetzen mit:

PHP:
foreach (Image::getAllSizes() as $size) {
$path = $this->generateImagePath($size, $number, $source);
  if (!\file_exists(\PFAD_ROOT . $path)) {
    $this->generateImage($size, $number, $source);
  }
  if (!\file_exists(\PFAD_ROOT . $path)) {
    $this->imageDimensions[$number][$size] = $settings[$this->getImageType()][$size];
  } else {
    [$width, $height, $type]               = \getimagesize(\PFAD_ROOT . $path);
    if ($width == 0 || $width === NULL || $height == 0 || $height === NULL) {
      $this->generateImage($size, $number, $source);
      [$width, $height, $type]               = \getimagesize(\PFAD_ROOT . $path);
      if ($width == 0 || $width === NULL || $height == 0 || $height === NULL) {
        $width = 1;
        $height = 1;
      }
    }
    $this->imageDimensions[$number][$size] = ['width' => $width, 'height' => $height];
    }
}

Damit wird das Bild neu generiert, wenn es für Breite oder Höhe einen Wert von 0 liefert. Und wenn es nach dem Generieren immer noch einen Wert von 0 (oder gar keinen) liefert, dann wird beides einfach auf 1 gesetzt. Im letzteren Fall wird das Bild dann zwar nicht angezeigt, aber es sollte keinen Fatal mehr geben.
 

fhinok

Aktives Mitglied
9. September 2021
5
0
Vielen Dank für die Antwort und den Hotfix, hab denn mal so eingebaut und beobachte die Situation weiter.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Wo kann ich mich über JTL Kundencenter beschweren? 20 Minuten Lang einen Bug im Ticket dokumentiert, und am Ende "ein Fehler ist aufgetreten" Smalltalk 3
Neu Unterstützung bei JTL FFN Retouren – Fehler in der API-Übertragung von Returnless Starten mit JTL: Projektabwicklung & Migration 0
Fehler beim Verknüpfen von JTL-FFN mit Wawi – „Anmeldung nicht möglich“ JTL-Wawi 1.11 1
Neu JTL Track&Trace API Fehler derzeit? seit 15:50 Uhr JTL-Track&Trace - Fehler und Bugs 2
Neu Aktuellen JTL Shop installieren *Fehler* Installation / Updates von JTL-Shop 0
Neu Shopware 6.7.6.2 Fehler [No supported api version found.] 100 Shopware-Connector 0
Neu Probleme beim Lizenzkauf im Extension Store – PayPal-Fehler? Plugins für JTL-Shop 0
Neu eazyAuction eBay Fehler 2191421 – Telefonnummer ungültig eBay-Anbindung - Fehler und Bugs 1
Neu Fehler beim Update auf 1.11.5 - Ungültiger Objektname "dbo.tUpdateMigration User helfen Usern - Fragen zu JTL-Wawi 0
Neu Apache Protokoll GuzzleHttp/GET Fehler JTL-Shop - Fehler und Bugs 7
Neu eBay Abgleich lädt keine Daten Fehler eBay-Anbindung - Fehler und Bugs 0
Neu DPD Fehler bei der Anmeldung JTL-ShippingLabels - Fehler und Bugs 1
Neu Fehler bei der Anmeldung nach Update auf 1.11.5 Installation von JTL-Wawi 11
Neu - Sorry, war doch kein Fehler - Allgemeine Fragen zu JTL-Shop 0
Neu eBay Angebotsimport : Fehler bei der Kommunikation mit dem eA-Server eBay-Anbindung - Fehler und Bugs 0
Neu Fehler Connector Shopify Collection not found Shopify-Connector 8
Neu Seit Update auf 1.10.15.0: eBay Fahrzeugverwendungsliste Fehler eBay-Anbindung - Fehler und Bugs 3
Fehler seit Version 1.10.15 bei Artikel Auslieferung über Bestandsmenge JTL-Wawi 1.10 0
Beantwortet Workflow Datei schreiben Dateiname per Dotliquid Fehler Illegales Zeichen im Pfad. callerMemberName : WriteFile JTL-Workflows - Fehler und Bugs 1
Neu Fehler eBay-Abgleich eBay-Anbindung - Fehler und Bugs 21
Neu Anmeise Mediendateien Import Fehler JTL-Ameise - Fehler und Bugs 6
Wawi API REST-Server lässt sich nicht einrichten / Fehler 404 JTL-Wawi 1.11 1
Neu Fehler beim Shopabgleich - Duplicate Entry Allgemeine Fragen zu JTL-Shop 2
Neu eazyAuction holt keine Bestellung mehr von Amazon ab, im Logbuch "Fehler" ohne weitere Angabe Amazon-Anbindung - Fehler und Bugs 1
Neu FBA-Lagerbestand wird nicht mehr eingelesen - Fehler beim Verarbeiten von Amazon Events - FbaInventoryImported: Das angegebene Argument liegt außerha Amazon-Anbindung - Fehler und Bugs 13
Fehler Export PDF Datei / Senden per Email JTL-Wawi 1.11 3
Neu Amazon Bestellungen werden nicht abgerufen - Fehler bei Account 'XXX' []: Ihr Account ist nicht aktiv. Amazon-Anbindung - Fehler und Bugs 5
Neu Amazon eazyAuction Lizenz Fehler? Amazon-Anbindung - Fehler und Bugs 1
AmzLister 2.0 Fehler 99022 beim Vaterartikel Amazon-Lister - Fehler und Bugs 0
Bis alle Fehler behoben sind, nicht installieren. JTL-Wawi 1.11 58
Neu Abgleich bricht mit Fehler 503 ab Shopware-Connector 3
Neu Neues Plugin: Sauberes Meta-Tracking für JTL-Shop 5 (Pixel + CAPI + Consent) Plugins für JTL-Shop 0
Neu Idee - Versanddatum aus Amazon & eBay als Feld in JTL übernehmen eBay-Anbindung - Ideen, Lob und Kritik 0
Neu Wo kann ich in JTL das Datum sehen, an dem eine Bestellung als bezahlt bestätigt wurde? User helfen Usern - Fragen zu JTL-Wawi 1
Neu 📢 Plugin "Kreditlimit Plugin für JTL-Shop 5 " von CIN GmbH Plugins für JTL-Shop 0
Neu JTL Worker xml-import triggern Arbeitsabläufe in JTL-Wawi 8
Neu JTL 5.6.1 Settings page not saving JTL-Shop - Fehler und Bugs 2
Neu Newsletter: KI Webinare, JTL Wawi 2.0 und vieles mehr - Freue dich auf JTL Events! User helfen Usern - Fragen zu JTL-Wawi 5
Neu HGB-konforme Stichtagsbewertung inkl. Niederstwertprinzip (JTL-Wawi / MSSQL) Arbeitsabläufe in JTL-Wawi 0
Neu Aktuelle Meldung zur JTL Insolvenz - Fake oder real? Starten mit JTL: Projektabwicklung & Migration 9
Neu Hosting JTL Aktuell Allgemeine Fragen zu JTL-Shop 18
Neu Wechsel von JTL Shop 5 zu Shopify / ERP-Connector Produkte mit Variationen werden nicht übertragen Shopify-Connector 1
JTL Wawi App Registrierung kann nicht gelöscht werden JTL-Wawi App 11
Neu JTL-Connector + Shopware 6: Zweite Lizenz führt zu „Invalid credentials“ und blockiert bestehenden Shop Shopware-Connector 3
Neu JTL übernimmt immer Standard Versand von Amazon Amazon-Anbindung - Fehler und Bugs 0
Neu Feedbackrunde zur Umsetzung der Verpackungsverordnung (PPWR) in JTL-Wawi Umfragen rund um JTL 0
JTL Fulfillment Network Reservierte Aufträge, die nicht gelöscht werden können JTL-Wawi 1.10 0
Neu JTL-WAWI und LS-POS Wechseln Starten mit JTL: Projektabwicklung & Migration 1
Kaufland sendet keinen Bestand an JTL JTL-Wawi 1.10 1
Neu Steuereinstellungen JTL WAWI 1.11.5 Eigene Übersichten in der JTL-Wawi 0

Ähnliche Themen