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

  • Wichtiger Hinweis Liebe Kunden, solltet Ihr den DATEV Rechnungsdatenservice 2.0 nutzen, dann müsst Ihr bis zum 30.06.2024 JTL-Wawi 1.9 installieren. Danach wird die Schnittstelle für ältere Versionen nicht mehr unterstützt.
  • JTL-Connect 2024: Ihr habt noch kein Ticket? Jetzt Early Bird Ticket zum Vorzugspreis sichern! HIER geht es zum Ticketverkauf

fhinok

Aktives Mitglied
9. September 2021
4
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

Gut bekanntes Mitglied
Mitarbeiter
1. April 2022
68
32
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
4
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 JTL-Connector bricht Bilderabgleich mit Fehler ab WooCommerce-Connector 0
JTL WAWI 1.8.12.2 Shopware 6 / Connector Abgleich Fehler Gelöste Themen in diesem Bereich 3
Nach Aufruf von Stored Procedure 'Kunde.spKundeUpdate' schwere Fehler in JTL (z.B. Kundenliste, Workflow-Editor) JTL-Wawi 1.8 2
Neu Fehler beim Zahlungsabgleich - Zahlungsmodul - Wawi 1.5.55.5 Deutsche Bank JTL-Wawi - Fehler und Bugs 0
Neu SHOP 5.1.5. | Fehler bei Aufpreis Versandarten | sollte OHNE Mehrwertsteuer sein JTL-Shop - Fehler und Bugs 0
Fehler bei der verbindung der server anfrage am Arbeitzplatz JTL-Wawi 1.9 2
Neu Fehler Abgleich Shopware 6 Shopware-Connector 2
Neu Google-Shopping-Plugin Fehler Plugins für JTL-Shop 0
Neu Shop update vom 5.2.4 auf 5.3.1 - Fehler Kampagne JTL-Shop - Fehler und Bugs 0
Neu Umstellung 4.05 auf 5.2.5 - div. Fehler JTL-Shop - Fehler und Bugs 4
Neu SQL Fehler - Woher stammt diese Abfrage JTL-Shop - Fehler und Bugs 5
Neu Fehler beim Artikelimport Sondertyp JTL-Ameise - Fehler und Bugs 3
[WAWI-API] Fehler beim Updaten eines Item-Customfield JTL-Wawi 1.8 2
Neu Benachrichtigung anfordern - Fehler: Der eingegebene Bestätigungscode ist nicht bekannt JTL-Shop - Fehler und Bugs 0
Neu ebay Fehler 240 - nicht öffentliche Bieter-/Käuferliste eBay-Anbindung - Fehler und Bugs 5
Neu Der Remoteserver hat einen Fehler zurückgegeben: (500) Interner Serverfehler wir bitten Hilfe Gambio-Connector 6
Neu Fehler beim Import (Ameise) von Brutto-VK JTL-Ameise - Ideen, Lob und Kritik 9
Neu PLZ Prüfung Fehler - Shop 5.3.1 JTL-Shop - Fehler und Bugs 2
Neu Sitemap ist HTML - Sitemap kann gelesen werden, enthält aber Fehler / Google Web Master Tool Allgemeine Fragen zu JTL-Shop 6
Neu Fehler beim Hochladen der Datei JTL-Shop - Fehler und Bugs 0
Barcodescanner Fehler mit ein "U" am Ende JTL-Wawi 1.8 0
Fehler beim erstellen von Aufträgen JTL-Wawi App 2
Neu Fehler bei Sprach- und Währungsumstellung Allgemeine Fragen zu JTL-Shop 0
Fehler beim importieren eines Backups JTL-Wawi 1.8 2
Neu Fehler: Footer/Boxen - Kategoriefilter löscht Boxensortierung Allgemeine Fragen zu JTL-Shop 1
Neu Stripe - Fehler icomoon.ttf Plugins für JTL-Shop 0
Neu Gravierender Fehler in der Shop Software Betrieb / Pflege von JTL-Shop 3
Neu Fehler beim Bearbeiten von PLZ & Ort im Kundenkonto (Update 5.3.0) JTL-Shop - Fehler und Bugs 6
Neu Fehler bei Bearbeitung von Designvorlagen eBay-Designvorlagen - Fehler und Bugs 0
Fehler beim Rendering der Attribute bei SCX Abgleich kaufland.de - Anbindung (SCX) 4
Neu Smarty-Fehler im Logfile JTL-Shop - Fehler und Bugs 1
Neu Fehler beim Zahlungsabgleich - Zahlungsmodul - Wawi 1.5.55.6 Gelöste Themen in diesem Bereich 14
Neu Fehler: Sonderpreis falsch formatiert, wird nicht importiert; obwohl importiert genau wie exportiert User helfen Usern - Fragen zu JTL-Wawi 0
Neu Fehler beim erstellen von Aufträgen. Digitale Unterschrift im Auftrag. JTL-Wawi - Fehler und Bugs 0
Neu Dropshipping automatisieren. Mein Shop und Lieferant nutzen JTL WAWI Arbeitsabläufe in JTL-Wawi 0
Neu JTL Wawi startet nicht, nur als Beta Oberfläche JTL-Wawi - Fehler und Bugs 0
Neu 17.06.24 Meldung Lizenz für JTL Shipping Labels fehlt JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL POS in der Praxis in Österreich + Buchhaltungsexport Allgemeine Fragen zu JTL-POS 0
Neu JTL sendet Auftrag bei Zahlungsart "Rechnung" ungewollt! GELÖST. Workflowfehler!!!! JTL-Wawi - Fehler und Bugs 0
Neu JTL WAWI RESTAPI Sales Order kann nicht erstellt werden User helfen Usern - Fragen zu JTL-Wawi 0
Neu Merkmale Filter JTL Shop 5 benutzerdefiniert anzeigen Allgemeine Fragen zu JTL-Shop 0
JTL-Shop Upselling & Stripe-Anbindung Einrichtung JTL-Shop5 2
Neu SEO Pfad und _1 Artikel im JTL Shop 5.2.4 Gelöste Themen in diesem Bereich 8
Neu EXPORTFORMATE im JTL Shop 5 richtig einstellen Allgemeine Fragen zu JTL-Shop 0
Neu Zweiter Zugang zum JTL Kundencenter für den Bereich JTL Search Betrieb / Pflege von JTL-Shop 2
Neu Welche Server-Voraussetzung für JTL Shop(s) Installation / Updates von JTL-Shop 5
Neu JTL-Shipping Labels - DHL Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
DATEV Rechnungsdatenservice 2.0 definitiv nicht in JTL Wawi 1.8? JTL-Wawi 1.8 2
Neu Onepage Designer will mit UserLogin/ Admin Login nicht (\JTL\Shop::isAdmin(true)) hat bestimmt Probleme JTL-Shop - Fehler und Bugs 0
Beantwortet JTL Search - JTL Shop 5.3.1 JTL-Search 2

Ähnliche Themen