Update 6.6.9 > 6.6.10

Moin,

auch ich hänge immer wieder bei den Shopware Updates und beiße in die Tischkante :frowning: .

Leider wurde dieser Thread bereits geschlossen, denn genau an diesem Fehler hänge ich gerade.
Die in dem Thread erwähnten Lösungsschritte habe ich natürlich bereits durch gekaut.

Gibt es noch Ideen?

Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException {#3273
  #message: "You have requested a non-existent service "mailer.default_transport"."
  #code: 0
  #file: "/var/www/html/vendor/symfony/dependency-injection/ContainerBuilder.php"
  #line: 1042
  -id: "mailer.default_transport"
  -sourceId: null
  -alternatives: []
  trace: {
    /var/www/html/vendor/symfony/dependency-injection/ContainerBuilder.php:1042 { …}
    /var/www/html/vendor/shopware/core/Content/Mail/MailerConfigurationCompilerPass.php:20 { …}
    /var/www/html/vendor/symfony/dependency-injection/Compiler/Compiler.php:73 { …}
    /var/www/html/vendor/symfony/dependency-injection/ContainerBuilder.php:814 { …}
    /var/www/html/vendor/symfony/http-kernel/Kernel.php:499 { …}
    /var/www/html/vendor/symfony/http-kernel/Kernel.php:744 { …}
    /var/www/html/vendor/symfony/http-kernel/Kernel.php:120 { …}
    /var/www/html/vendor/shopware/core/Kernel.php:190 { …}
    /var/www/html/bin/console:54 {
      {closure}
      › $application = new Application($kernel);
      › $kernel->boot();
      › 
    }
    /var/www/html/vendor/autoload_runtime.php:24 { …}
    /var/www/html/bin/console:17 { …}
  }
}
2025-03-29T07:17:36+00:00 [info] User Deprecated: The "url" connection parameter is deprecated. Please use Doctrine\DBAL\Tools\DsnParser to parse a database url before calling Doctrine\DBAL\DriverManager. (DriverManager.php:257 called by DriverManager.php:173, https://github.com/doctrine/dbal/pull/5843, package doctrine/dbal)
2025-03-29T07:17:36+00:00 [info] User Deprecated: Not configuring a schema manager factory is deprecated. Use Doctrine\DBAL\Schema\DefaultSchemaManagerFactory which is going to be the default in DBAL 4. (Connection.php:227 called by DriverManager.php:197, https://github.com/doctrine/dbal/issues/5812, package doctrine/dbal)
2025-03-29T07:17:36+00:00 [info] User Deprecated: Since shopware/core : The Shopware\Core\Service\Service bundle should be added to config/bundles.php
2025-03-29T07:17:36+00:00 [info] User Deprecated: Since symfony/dependency-injection 7.2: Type "tagged" is deprecated for tag , use "tagged_iterator" instead in "/var/www/html/custom/plugins/SwagPayPal/src/Resources/config/services/webhook.xml".
2025-03-29T07:17:36+00:00 [info] User Deprecated: Since symfony/dependency-injection 7.2: Type "tagged" is deprecated for tag , use "tagged_iterator" instead in "/var/www/html/custom/plugins/SwagPayPal/src/Resources/config/services/pos/webhook.xml".
2025-03-29T07:17:36+00:00 [info] User Deprecated: Since symfony/dependency-injection 7.2: Type "tagged" is deprecated for tag , use "tagged_iterator" instead in "/var/www/html/custom/plugins/PickwareWms/vendor/pickware/mobile-app-auth-bundle/src/OAuth/DependencyInjection/service.xml".
2025-03-29T07:17:36+00:00 [info] User Deprecated: Since shopware/core 6.6.10.0: The fine-grained cache "tagging" configuration is deprecated and will be removed with Shopware 6.7.0.0
2025-03-29T07:17:36+00:00 [critical] Uncaught Exception: You have requested a non-existent service "mailer.default_transport".

#push wir haben das gleiche Problem mit dem Update.. Shop ist broken, spiele gerade wieder ein Backup drauf und hoffe das der Shop zumindest mal wieder funktioniert.

Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException {#2737
#message: „You have requested a non-existent service „mailer.default_transport“.“
#code: 0
#file: „/home/evenumlj/www.evers-graphics-shop.de/vendor/symfony/dependency-injection/ContainerBuilder.php“
#line: 1042
-id: „mailer.default_transport“
-sourceId: null
-alternatives:
trace: {
/home/evenumlj/www.evers-graphics-shop.de/vendor/symfony/dependency-injection/ContainerBuilder.php:1042 { …}
/home/evenumlj/www.evers-graphics-shop.de/vendor/shopware/core/Content/Mail/MailerConfigurationCompilerPass.php:20 { …}
/home/evenumlj/www.evers-graphics-shop.de/vendor/symfony/dependency-injection/Compiler/Compiler.php:73 { …}
/home/evenumlj/www.evers-graphics-shop.de/vendor/symfony/dependency-injection/ContainerBuilder.php:814 { …}
/home/evenumlj/www.evers-graphics-shop.de/vendor/symfony/http-kernel/Kernel.php:499 { …}
/home/evenumlj/www.evers-graphics-shop.de/vendor/symfony/http-kernel/Kernel.php:744 { …}
/home/evenumlj/www.evers-graphics-shop.de/vendor/symfony/http-kernel/Kernel.php:120 { …}
/home/evenumlj/www.evers-graphics-shop.de/vendor/shopware/core/Kernel.php:190 { …}
/home/evenumlj/www.evers-graphics-shop.de/bin/console:54 {
{closure}
› $application = new Application($kernel);
› $kernel->boot();

}
/home/evenumlj/www.evers-graphics-shop.de/vendor/autoload_runtime.php:24 { …}
/home/evenumlj/www.evers-graphics-shop.de/bin/console:17 { …}
}
}
2025-04-02T13:34:22+00:00 [info] User Deprecated: The „url“ connection parameter is deprecated. Please use Doctrine\DBAL\Tools\DsnParser to parse a database url before calling Doctrine\DBAL\DriverManager. (DriverManager.php:257 called by DriverManager.php:173, Standalone DSN parser by derrabus · Pull Request #5843 · doctrine/dbal · GitHub, package doctrine/dbal)
2025-04-02T13:34:22+00:00 [info] User Deprecated: Not configuring a schema manager factory is deprecated. Use Doctrine\DBAL\Schema\DefaultSchemaManagerFactory which is going to be the default in DBAL 4. (Connection.php:227 called by DriverManager.php:197, Create an easy way to extend the schema manager · Issue #5812 · doctrine/dbal · GitHub, package doctrine/dbal)
2025-04-02T13:34:22+00:00 [info] User Deprecated: Since shopware/core : The Shopware\Core\Service\Service bundle should be added to config/bundles.php
2025-04-02T13:34:22+00:00 [info] User Deprecated: Since shopware/core 6.6.10.0: The fine-grained cache „tagging“ configuration is deprecated and will be removed with Shopware 6.7.0.0
2025-04-02T13:34:22+00:00 [critical] Uncaught Exception: You have requested a non-existent service „mailer.default_transport“.

Moin,

Shopware basiert auf Symfony, und in neueren Versionen hat Symfony das Mailer-System umgestellt. In Shopware 6.6.x wurde die Einstellung mailer.default_transport entfernt und durch ein konfigurierbares, DSN-basiertes System ersetzt.

Überprüfe daher einmal deine Datei env.local und passe die Konfiguration so an, dass sie den DSN-Wert für den Mailer enthält. Das könnte dann zum Beispiel so aussehen:

MAILER_DSN=smtp://user:pass@smtp.example.com:587

Anstelle von MAILER_URL sollte jetzt MAILER_DSN verwendet werden.

Wenn du keinen Mailversand benötigst oder die Funktion deaktivieren möchtest, kannst du in der .env einen Platzhalter eintragen:

MAILER_DSN=null://null

Nachdem du die Änderung vorgenommen hast, solltest du einmal den Cache leeren: bin/console cache:clear

Danach sollte das Update durchführbar sein. Ansonsten meldet euch nochmal und ich suche nochmal bei uns weiter :slightly_smiling_face:

Gruß,
Florian

Ich habe heute das Backup reingeladen, alles hat wieder funktioniert.
Da wir immer Probleme haben mit unserem custom Theme und das Shopware beim Update oft nicht deaktiviert habe ich jetzt alles nochmal probiert und via phpmyadmin deaktiviert.

Leider bekomme ich nun diese Fehlermeldung (nachdem ich in der env.local Datei den Punkt URL durch DSN ersetzt habe. Ehrlicherweise muss ich sagen das ich nicht weiß wie ich in die console komme.

Symfony\Component\ErrorHandler\Error\ClassNotFoundError {#41
#message: „“"
Attempted to load class „HttpKernel“ from namespace „Shopware\Core“.\n
Did you forget a „use“ statement for e.g. „Symfony\Component\HttpKernel\HttpKernel“ or „Shopware\Core\Framework\Adapter\Kernel\HttpKernel“?
„“"
#code: 0
#file: „/home/evenumlj/www.evers-graphics-shop.de/bin/console“
#line: 47
trace: {
/home/evenumlj/www.evers-graphics-shop.de/bin/console:47 {
{closure}

› $kernel = new HttpKernel($env, $debug, $classLoader);
› $kernel->setPluginLoader($pluginLoader);
}
/home/evenumlj/www.evers-graphics-shop.de/vendor/autoload_runtime.php:24 { …}
/home/evenumlj/www.evers-graphics-shop.de/bin/console:15 { …}
}
}
2025-04-03T13:52:32+02:00 [info] User Deprecated: The „url“ connection parameter is deprecated. Please use Doctrine\DBAL\Tools\DsnParser to parse a database url before calling Doctrine\DBAL\DriverManager. (DriverManager.php:257 called by DriverManager.php:173, Standalone DSN parser by derrabus · Pull Request #5843 · doctrine/dbal · GitHub, package doctrine/dbal)
2025-04-03T13:52:32+02:00 [info] User Deprecated: Not configuring a schema manager factory is deprecated. Use Doctrine\DBAL\Schema\DefaultSchemaManagerFactory which is going to be the default in DBAL 4. (Connection.php:227 called by DriverManager.php:197, Create an easy way to extend the schema manager · Issue #5812 · doctrine/dbal · GitHub, package doctrine/dbal)
2025-04-03T13:52:32+02:00 [critical] Uncaught Error: Class „Shopware\Core\HttpKernel“ not found

Hi @UEGS,

der Fehler sollte behoben werden können, wenn du mal ein composer update auf der Konsole in deinem Shopware Verzeichnis durchführst. Wie du dich auf die Konsole verbindest, müsstest du von deinem Hoster erfragen.

Sollte das auch nicht helfen, melde dich einfach nochmal. Ich versuche dann mal intern dazu was in Erfahrung zu bringen.

Viele Grüße aus Schöppingen,
Florian

Hi again,

danke für die Tips , leider haben sie nicht geholfen.

  • Backup eingespielt
  • Änderungen in der .env und .env.local durchgeführt
  • bin/console cache:clear durchgeführt
  • composer update

Die Sachen liefen ohne Fehler durch … anschließend versucht das Update erneut zu starten was mit der folgenden Fehlermeldung dankend quittiert wurde:

Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException {#3273
  #message: "You have requested a non-existent service "mailer.default_transport"."
  #code: 0
  #file: "/var/www/html/vendor/symfony/dependency-injection/ContainerBuilder.php"
  #line: 1042
  -id: "mailer.default_transport"
  -sourceId: null
  -alternatives: []
  trace: {
    /var/www/html/vendor/symfony/dependency-injection/ContainerBuilder.php:1042 { …}
    /var/www/html/vendor/shopware/core/Content/Mail/MailerConfigurationCompilerPass.php:20 { …}
    /var/www/html/vendor/symfony/dependency-injection/Compiler/Compiler.php:73 { …}
    /var/www/html/vendor/symfony/dependency-injection/ContainerBuilder.php:814 { …}
    /var/www/html/vendor/symfony/http-kernel/Kernel.php:499 { …}
    /var/www/html/vendor/symfony/http-kernel/Kernel.php:744 { …}
    /var/www/html/vendor/symfony/http-kernel/Kernel.php:120 { …}
    /var/www/html/vendor/shopware/core/Kernel.php:190 { …}
    /var/www/html/bin/console:54 {
      {closure}
      › $application = new Application($kernel);
      › $kernel->boot();
      › 
    }
    /var/www/html/vendor/autoload_runtime.php:24 { …}
    /var/www/html/bin/console:17 { …}
  }
}
2025-04-06T07:05:58+00:00 [info] User Deprecated: The "url" connection parameter is deprecated. Please use Doctrine\DBAL\Tools\DsnParser to parse a database url before calling Doctrine\DBAL\DriverManager. (DriverManager.php:257 called by DriverManager.php:173, https://github.com/doctrine/dbal/pull/5843, package doctrine/dbal)
2025-04-06T07:05:58+00:00 [info] User Deprecated: Not configuring a schema manager factory is deprecated. Use Doctrine\DBAL\Schema\DefaultSchemaManagerFactory which is going to be the default in DBAL 4. (Connection.php:227 called by DriverManager.php:197, https://github.com/doctrine/dbal/issues/5812, package doctrine/dbal)
2025-04-06T07:05:58+00:00 [info] User Deprecated: Since shopware/core : The Shopware\Core\Service\Service bundle should be added to config/bundles.php
2025-04-06T07:05:58+00:00 [info] User Deprecated: Since symfony/dependency-injection 7.2: Type "tagged" is deprecated for tag , use "tagged_iterator" instead in "/var/www/html/custom/plugins/SwagPayPal/src/Resources/config/services/webhook.xml".
2025-04-06T07:05:58+00:00 [info] User Deprecated: Since symfony/dependency-injection 7.2: Type "tagged" is deprecated for tag , use "tagged_iterator" instead in "/var/www/html/custom/plugins/SwagPayPal/src/Resources/config/services/pos/webhook.xml".
2025-04-06T07:05:58+00:00 [info] User Deprecated: Since symfony/dependency-injection 7.2: Type "tagged" is deprecated for tag , use "tagged_iterator" instead in "/var/www/html/custom/plugins/PickwareWms/vendor/pickware/mobile-app-auth-bundle/src/OAuth/DependencyInjection/service.xml".
2025-04-06T07:05:58+00:00 [info] User Deprecated: Since shopware/core 6.6.10.0: The fine-grained cache "tagging" configuration is deprecated and will be removed with Shopware 6.7.0.0
2025-04-06T07:05:58+00:00 [critical] Uncaught Exception: You have requested a non-existent service "mailer.default_transport".
Summary

This text will be hidden

Hi @stahre,
dann hast du scheinbar immer noch irgendwo den mailer.default_transport drinstehen (ggf. auch ungewollt). Schau mal, ob du mit grep die Stelle findest, wo ggf. noch der Eintrag drin steht:

grep -Rni "mailer.default_transport" /pfad/zum/shopware-verzeichnis

Es kann auch sein, dass du nach den Änderungen einmal das komplette Cache Verzeichnis löschen musst, da hier ggf. auch noch alte Daten drinstehen können. Das machst du mit rm -rf /shopwareverzeichnis/var/cache im Anschluss erstellt Shopware dann wieder ein neues Verzeichnis.

Sollte der Fehler danach immer noch auftreten, schauen wir mal weiter.

Viele Grüße,
Florian

Hi @UEGS,

hattest du schon ein composer update nach deiner letzten Fehlermeldung durchgeführt? Falls nicht, tue dies bitte einmal.

Sollte der Fehler weiterhin bestehen, melde dich einmal wieder!

Viele Grüße,
Florian

Hi again,

ich habe das ganze noch einmal durchgespielt, leider ohne erfolg.
Die einzigen Dateien die den „mailer.default_transport“ enthalten sind Systemdateien die ich vermutlich nicht anfassen sollte?

vendor/shopware/core/Content/Mail/MailerConfigurationCompilerPass.php:19:        $container->getDefinition('mailer.default_transport')->setFactory([
vendor/symfony/framework-bundle/Resources/config/mailer.php:48:        ->set('mailer.default_transport', TransportInterface::class)
vendor/symfony/framework-bundle/Resources/config/mailer.php:53:        ->alias(TransportInterface::class, 'mailer.default_transport')
vendor/symfony/framework-bundle/DependencyInjection/FrameworkExtension.php:2605:        $container->getDefinition('mailer.default_transport')->setArgument(0, current($transports));

Hiernach sollte das nicht mehr passieren:

Bist du dir sicher, dass composer das Update durchgeführt hat? Wenn er in Zeile 20 ein Fehler wirft, dann hast du noch die Datei vor Version vor 6.6.10.2 auf dem Server.

$container->getDefinition('mailer.default_transport')->setFactory([ sollte eigentlich in älteren Versionen in Zeile 20 stehen und nicht wie bei dir angegeben in 19. Aber vielleicht ist das auch ein Fehler von grep.

Moin, klinke mich mal mit ein. Wir haben auch massive Probleme beim Update von 6.6.9.0 auf 6.6.10.3 bzw 6.6.10.0

Symfony\Component\Config\Definition\Exception\InvalidConfigurationException {#7166
  #message: "Unrecognized option "reset_on_message" under "framework.messenger". Available options are "buses", "default_bus", "enabled", "failure_transport", "routing", "serializer", "stop_worker_on_signals", "transports"."
  #code: 0
  #file: "/www/htdocs/.../staging/vendor/symfony/config/Definition/ArrayNode.php"
  #line: 304
  -path: "framework.messenger"
  -containsHints: false
  trace: {
    /www/htdocs/.../staging/vendor/symfony/config/Definition/ArrayNode.php:304 { …}
    /www/htdocs/.../staging/vendor/symfony/config/Definition/BaseNode.php:357 { …}
    /www/htdocs/.../staging/vendor/symfony/config/Definition/ArrayNode.php:269 { …}
    /www/htdocs/.../staging/vendor/symfony/config/Definition/BaseNode.php:357 { …}
    /www/htdocs/.../staging/vendor/symfony/config/Definition/Processor.php:32 { …}
    /www/htdocs/.../staging/vendor/symfony/config/Definition/Processor.php:46 { …}
    /www/htdocs/.../staging/vendor/symfony/dependency-injection/Extension/Extension.php:109 { …}
    /www/htdocs/.../staging/vendor/symfony/framework-bundle/DependencyInjection/FrameworkExtension.php:275 { …}
    /www/htdocs/.../staging/vendor/symfony/dependency-injection/Compiler/MergeExtensionConfigurationPass.php:81 { …}
    /www/htdocs/.../staging/vendor/symfony/http-kernel/DependencyInjection/MergeExtensionConfigurationPass.php:40 { …}
    /www/htdocs/.../staging/vendor/symfony/dependency-injection/Compiler/Compiler.php:73 { …}
    /www/htdocs/.../staging/vendor/symfony/dependency-injection/ContainerBuilder.php:814 { …}
    /www/htdocs/.../staging/vendor/symfony/http-kernel/Kernel.php:499 { …}
    /www/htdocs/.../staging/vendor/symfony/http-kernel/Kernel.php:744 { …}
    /www/htdocs/.../staging/vendor/symfony/http-kernel/Kernel.php:120 { …}
    /www/htdocs/.../staging/vendor/shopware/core/Kernel.php:190 { …}
    /www/htdocs/.../staging/bin/console:64 {
      {closure}
      › $application = new Application($kernel);
      › $kernel->boot();
      › 
    }
    /www/htdocs/.../staging/vendor/autoload_runtime.php:24 { …}
    /www/htdocs/.../staging/bin/console:18 { …}
  }
}
[critical] Uncaught Exception: Unrecognized option "reset_on_message" under "framework.messenger". Available options are "buses", "default_bus", "enabled", "failure_transport", "routing", "serializer", "stop_worker_on_signals", "transports".

Bisher probiert:

  • ArrayNode.php Z.304-307 auskommentiert. (und auch Schreibrechte entfernt) wird dennoch überschrieben und wirft Fehler
  • messenger.yaml Z4. auskommentiert (wird ebenfalls beim Update überschrieben)

Update wurde auf einer Staging-Umgebung durchgeführt, nach dem Crash im Back- sowie Frontend der Staging-Umgebung Error 500…

Mal alle yaml in config/packages durchsehen, ob sich nicht irgendwo anders der Wert versteckt hat.

Moin @leon.k,
der Fehler hat tatsächlich nichts mit dem ursprünglichen Problem hier im Thread zu tun, aber hier einmal die passende Lösung:

Der Fehler, den du bekommst, deutet darauf hin, dass beim Update auf Shopware 6.6.10.3 eine veraltete oder inkompatible Konfiguration in deiner Symfony-Messenger-Config vorhanden ist.

Die Option reset_on_message wurde in neueren Symfony-Versionen entfernt oder verlagert, und ist daher nicht mehr gültig in deiner config/packages/messenger.yaml

Du musst die Option reset_on_message aus deiner Konfiguration entfernen oder korrekt verschieben.

Beispiel: Vorher (nicht mehr gültig)

framework:
  messenger:
    reset_on_message: true

Nachher (gültige Konfiguration) Die Option reset_on_message war eigentlich eine Option pro Transport und nicht auf der obersten Ebene. Du solltest deine messenger.yaml auf so etwas wie das hier umstellen:

framework:
  messenger:
    transports:
      async:
        dsn: '%env(MESSENGER_TRANSPORT_DSN)%'
        options:
          # reset_on_message ist hier NICHT mehr erlaubt!
    default_bus: messenger.bus.default

Versucht danach einmal das Update zu starten.

Viele Grüße aus Schöppingen,
Florian

1 „Gefällt mir“