5.7.7, PHP 8.1 und der Pluginmanager

Hallo,

nach dem Update auf die 5.7.7 wollte ich noch mal das Thema PHP 8.1 angehen.
Soweit scheint alles zu funktionieren, nur der Shopware eigene Pluginmanager bringt beim starten die 500 - Meldung.
Ein Logging bringt auch nicht mehr Informationen. Hab noch mal auf 7.4 umgestellt und den gesicherten Modus aktiviert, dann wieder auf 8.1, bekomme aber den gleichen Fehler.

Jemand eine Idee wie ich rausbekommen was mir die 500 - sagen will?

Gruß Dirk

Hallo Dirk,

vielleicht hilft dir dieser Artikel beim Herausfinden des Fehlers: Shopware 5 - Tutorials & FAQs - Fehlermeldungen in Shopware debuggen

Viele Grüße aus Schöppingen
Michael Telgmann

Hallo Dirk,

hier mal meine DebugConfig:

Vllt. hilft sie dir!

EDIT: ich habe das gerade bei mir einmal gegentestet… Ich habe keine Probleme!
EDIT2: OK… mit DebugConfig habe ich auch Probleme.


    'errorHandler' => [
        'throwOnRecoverableError' => false,
    ],
    'front' => [
        'noErrorHandler' => true,
        'throwExceptions' => true,
    ],
    'phpsettings' => [
        'display_errors' => 1,
    ],
    'template' => [
        'forceCompile' => true,
    ],
    'httpcache' => [
        'enabled' => false,
        'debug' => true,
    ],
    'cache' => [
        'frontendOptions' => [
            'write_control' => false
        ],
        'backend' => 'Black-Hole',
        'backendOptions' => [],
    ],
    'extjs' => [
       'developer_mode' => true,
     ],
    'model' => [
        'cacheProvider' => 'Array'
    ],
    'csrfProtection' => [
        'backend' => true,
        'frontend' => true
    ]

LG

Dennis Garding

Hallo,

das PHP Error Log wird alle 2 Sekunden mit dem folgenden Eintrag gefüllt. Der eigentliche Aufruf des Pluginmanagers erzeugt keinen Eintrag.

Der wird damit sicher nichts zu tun haben?
[11-Jan-2022 15:28:42 Europe/Berlin] PHP Deprecated: Return type of Zend_Db_Statement_Pdo::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /html/shopware/engine/Library/Zend/Db/Statement/Pdo.php on line 254

Wie wird denn dieser aktiviert? per SQL? Und wenn, wo?

Im Backend bei den Plugins kannst du ihn unten aktivieren.

Gerade gefunden, danke.

Wo wäre das ganze in der Datenbank, für den Fall, der Shop startet mit Plugins nicht mehr?

Hallo,

ihr müsst eig. nur tun was die Fehlermeldung sagt =)

#[\ReturnTypeWillChange] über die methode einfügen… dann wird das ignoriert.

/**
     * Required by IteratorAggregate interface
     *
     * @return IteratorIterator
     */
    #[\ReturnTypeWillChange]
    public function getIterator()
    {
        return new IteratorIterator($this->_stmt);
    }

Was macht überhaupt diese Zeile hier? Im Original von SW ist das gar nicht. Wird da am Core gefummelt?

New `#[ReturnTypeWillChange]` attribute - PHP 8.1 • PHP.Watch :wink:

LG Phil

Hallo,

wenn du diese Zeilen nicht im Original SW findest dann ist beim Update was schief gelaufen… da sollten eig. jede menge davon sein. Ohne ist SW in 8.1 nicht lauffähig.

ggf. das nochmal überprüfen

LG
Dennis Garding

Achja?

Sehe ich derzeit nicht im Code

Ein missverständniss… ich meine Allgemein im SW code Nicht in dieser Datei. :sweat_smile:

In der fehlt es natürlich…

1 Like

:kissing_closed_eyes: :+1:
alles klar :wink: