Fehler: Urplötzlich streiken alle Seiten: "No matching function for overloaded 'new_File'"

deniz.cetin's Avatar

deniz.cetin

Aug 24, 2023 @ 02:47 PM

Produkt: Custom Elements Contao
Contao-Version: 4.4 - 4.13

Hallöchen,

urplötzlich funktionieren unsere Webseiten mit Rocksolid Custom Elements nicht mehr- ich bin mir nicht ganz sicher, woran es liegt, egal ob PHP Version 7.4 oder 8.2, es kommt nur folgender Fehler im Log:

[2023-08-24 16:42:58] console.ERROR: Error thrown while running command "cache:warmup --env=prod". Message: "No matching function for overloaded 'new_File'" {"exception":"[object] (TypeError(code: 0): No matching function for overloaded 'new_File' at /var/www/vhosts/WEBSEITE/httpdocs/WEBSEITE/vendor/madeyourday/contao-rocksolid-custom-elements/src/CustomElements.php:1301)","command":"cache:warmup --env=prod","message":"No matching function for overloaded 'new_File'"} []

Versuche ich den Cache via Contao-Manager zu leeren, kommt folgender Fehler:

16:42:58 ERROR [console] Error thrown while running command "cache:warmup --env=prod". Message: "No matching function for overloaded 'new_File'" ["exception" => TypeError { …},"command" => "cache:warmup --env=prod","message" => "No matching function for overloaded 'new_File'"] In CustomElements.php line 1301:

No matching function for overloaded 'new_File'

Irgendeine Ahnung, woran das liegen könnte?

  1. Support Staff 1 Posted by RockSolid Theme... on Aug 24, 2023 @ 03:12 PM

    RockSolid Themes's Avatar

    Welche Version der Custom Elements ist installiert?
    Welcher Code befindet sich in der Datei /var/www/vhosts/WEBSEITE/httpdocs/WEBSEITE/vendor/madeyourday/contao-rocksolid-custom-elements/src/CustomElements.php auf Zeile 1301?

  2. 2 Posted by deniz.cetin on Aug 24, 2023 @ 03:22 PM

    deniz.cetin's Avatar

    Unterschiedlich:
    - Version 2.3.12 auf einer 4.9.42 Installation funktioniert nicht.
    - Version 2.3.12 bei 4.9.42 funktioniert nicht (zum Vergleich eine 2. Seite angeschaut)
    - Version 2.2.15 auf einer älteren 4.4.48 funktioniert noch
    - Version .2.4.6 bei 4.13.29 funktioniert

    Zwischen Zeilen 1300 und 1316 steht folgendes (bei den nicht funktionierenden Versionen):

     /**
         * Get path and fullPath to the cache file
         *
         * @return string
         */
        public static function getCacheFilePaths()
        {
            $cacheDir = \System::getContainer()->getParameter('kernel.cache_dir') . '/contao';
    
            $filePath = $cacheDir . '/rocksolid_custom_elements_config.php';
    
            return array(
                'path' => StringUtil::stripRootDir($filePath),
                'fullPath' => $filePath,
            );
        }
    

    Bie den funktionierenden Versionen kommt das erst später. Die Datei ist auch angehängt.

  3. 3 Posted by deniz.cetin on Aug 24, 2023 @ 03:29 PM

    deniz.cetin's Avatar

    Gerade versucht downzugraden, aber es bleibt leider beim gleichen Fehler hängen:

    In ScriptHandler.php line 98:
    An error occurred while executing the "cache:warmup" command: 17:26:38 CRIT
    ICAL [console] Error thrown while running command "cache:warmup --env=prod
    --no-ansi". Message: "No matching function for overloaded 'new_File'" ["ex
    ception" => TypeError { …},"command" => "cache:warmup --env=prod --no-ansi"
    ,"message" => "No matching function for overloaded 'new_File'"]
    In CustomElements.php line 1301:
    No matching function for overloaded 'new_File'
  4. Support Staff 4 Posted by RockSolid Theme... on Aug 24, 2023 @ 03:31 PM

    RockSolid Themes's Avatar

    Zwischen Zeilen 1300 und 1316 steht folgendes

    Die genaue Zeile steht in der Fehlermeldung (z. B. In CustomElements.php line 1301). Damit wir den Fehler genauer untersuchen können müssen wir wissen was genau in der Installation auf der gemeldeten Zeile in der gemeldeten Datei steht. Das ist potenziell bei jeder Installation anderns somit ist es wichtig die Informationen aus derselben zu beziehen.

  5. 5 Posted by deniz.cetin on Aug 24, 2023 @ 03:37 PM

    deniz.cetin's Avatar

    Nehme ich als Beispiel

    No matching function for overloaded 'new_File' at /var/www/vhosts/DOMAIN/httpdocs/contao-2020/vendor/madeyourday/contao-rocksolid-custom-elements/src/Element/CustomElement.php:243
    

    Dann steht in dieser Datei bei Zeile 243:

    $file = new \File($image->path, true);
    

    Andere Seite:

    [2023-08-24 15:35:21] request.CRITICAL: Uncaught PHP Exception TypeError: "No matching function for overloaded 'new_File'" at /var/www/vhosts/DOMAIN/httpdocs/DOMAIN/vendor/madeyourday/contao-rocksolid-custom-elements/src/Element/CustomElement.php line 231 {"exception":"object"} []
    

    Gleiche Zeile:

    $file = new \File($image->path, true);

  6. 6 Posted by deniz.cetin on Aug 24, 2023 @ 03:46 PM

    deniz.cetin's Avatar

    Ich muss wohl etwas weiter ausholen: Wenn ich mir die Log-Dateien genauer ansehe, dann betrifft das nicht (nur) die Custom Elements, sondern auch andere Sachen:

    [2023-08-24 11:06:37] app.CRITICAL: An exception occurred. {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Type error: No matching function for overloaded 'new_File' at /var/www/vhosts/DOMAIN/httpdocs/DOMAIN/vendor/madeyourday/contao-rocksolid-slider/src/Module/Slider.php:172)"} []

    Zeile 172:

    $file = new \File($files->path, true);

    Aber anscheinend immer das Gleiche?

    Natürlich muss sowas immer Freitag Nachmittag passieren...

  7. Support Staff 7 Posted by RockSolid Theme... on Aug 24, 2023 @ 05:05 PM

    RockSolid Themes's Avatar

    Befinden sich alle betroffenen Websites auf dem selben Server bzw. beim selben Hosting-Provider?

    Falls ja ließe das zusammen mit der Fehlermeldung No matching function for overloaded vermuten, dass kürzlich eine PHP-Erweiterung hinzugefügt wurde die ebenfalls den Klassennamen Files nutzt. Wenn diese PHP-Erweiterung wieder entfernt wird, sollte das Problem damit verschwinden.

    Testweise können Sie alle Vorkommen von new \File mit new \Contao\File ersetzen, damit lässt sich das Problem vermutlich ebenfalls umgehen.
    In den neuesten Versionen der Erweiterungen, die jedoch nur mit Contao 4.13 und 5.2 kompatibel sind, wird new \File so nicht mehr verwendet.

  8. 8 Posted by deniz.cetin on Aug 24, 2023 @ 05:13 PM

    deniz.cetin's Avatar

    Herzlichen Dank für die so späte Antwort an einem Freitag- ich habe das mal testweise umgeschrieben und siehe da, neuer Fehler:

    [2023-08-24 17:09:00] app.CRITICAL: An exception occurred. {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Type error: No matching function for overloaded 'new_File' at /var/www/vhosts/DOMAIN/httpdocs/DOMAIN/vendor/contao/core-bundle/src/Resources/contao/library/Contao/Controller.php:1427)"} []

    Nach dem korrigieren der nächste:
    [2023-08-24 17:11:09] app.CRITICAL: An exception occurred. {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Type error: No matching function for overloaded 'new_File' at /var/www/vhosts/cargocowboys.de/httpdocs/DOMAIN/vendor/contao/core-bundle/src/Resources/contao/elements/ContentGallery.php:95)"} []

    nachdem ich alle Vorkommnisse abgeändert habe, funktioniert die Seite wieder. Meine Güte, vielen herzlichen Dank für den Tipp, dann muss ich nachsehen, welche Erweiterung hierfür verantwortlich sein könnte.

    Dickes, fettes Dankeschön!

  9. 9 Posted by deniz.cetin on Aug 24, 2023 @ 05:35 PM

    deniz.cetin's Avatar

    Nachtrag: Es lag an unserem Server- wir haben neulich den Plesk Premium E-Mail Service on Plesk selbst installiert, dieser hat bei allen PHP-Versionen unter anderem die Erweiterung "kolabformat" hinzugefügt und aktiviert. Deaktiviert man dieses PHP-Plugin, dann funktioniert alles wieder. Die älteren Seiten auf die aktuellste Version zu aktualisieren schafft ebenfalls Abhilfe, unter Contao 4.13.x und PHP 8.2 und höher spielt das keine Rolle. Mein Gott. Danke an wen auch immer der um 19 Uhr bei euch noch den entscheidenden Tipp gegeben hat. Schickt mir gerne eine Rechnung dafür. 😂

  10. Support Staff 10 Posted by RockSolid Theme... on Aug 25, 2023 @ 12:36 PM

    RockSolid Themes's Avatar

    Vielen Dank für Ihr positives Feedback!

    In unserer Zeitzone ist allerdings erst heute Freitag ;)

Reply to this discussion

Internal reply

        No formatting (switch to Markdown)

          You can attach files up to 10MB

          If you don't have an account yet, we need to confirm you're human and not a machine trying to post spam.

            Keyboard shortcuts

            Generic

            ? Show this help
            ESC Blurs the current field

            Comment Form

            r Focus the comment reply box
            ^ + ↩ Submit the comment

            You can use Command ⌘ instead of Control ^ on Mac