Service Überschreiben. Abhängigkeiten bleiben bestehen. Was tun?

Hi.

Ich versuche wie folgt einen Service zu überschreiben:
<service id=„PLUGINNAME\Service\AvailableCombinationLoaderDecorator“ decorates=„Shopware\Core\Content\Product\SalesChannel\Detail\AvailableCombinationLoader“>
<argument type=„service“ id=„PLUGINNAME\Service\AvailableCombinationLoaderDecorator.inner“ />
<argument type=„service“ id=„Doctrine\DBAL\Connection“/>
</service>

Erhalte dann aber folgende Fehlermeldung:
Argument 2 passed to Shopware\Core\Content\Product\SalesChannel\Detail\ProductConfiguratorLoader::__construct() must be an instance of Shopware\Core\Content\Product\SalesChannel\Detail\AvailableCombinationLoader, instance of PLUGINNAME\Service\AvailableCombinationLoaderDecorator given

Habe dann noch folgendes probiert aber leider ohne weitere Auswirkung:
<service id=„Shopware\Core\Content\Product\SalesChannel\Detail\ProductConfiguratorLoader“>
<argument type=„service“ id=„product_configurator_setting.repository“/>
<argument type=„service“ id=„PLUGINNAME\Service\AvailableCombinationLoaderDecorator“/>
</service>

Was mache ich falsch?

Gruß Mike

Ich glaube, Sie haben die Argumente einfach in die falsche Reihenfolge gebracht. Wenn Sie keine anderen Klassen in AvailableCombinationLoaderDecorator injiziert haben, dann sollte dies funktionieren:

<service id=„PLUGINNAME\Service\AvailableCombinationLoaderDecorator“ decorates=„Shopware\Core\Content\Product\SalesChannel\Detail\AvailableCombinationLoader“>
<argument type=„service“ id=„Doctrine\DBAL\Connection“/>
<argument type=„service“ id=„PLUGINNAME\Service\AvailableCombinationLoaderDecorator.inner“ />
</service>

Außerdem habe ich vor kurzem eine andere Klasse überschrieben und es hat funktioniert, also vielleicht können Sie einen Blick auf das Beispiel hier werfen:
https://shopwarian.com/solved-shopware-6-sitemap-generates-urls-with-http-instead-of-https/

Hi Shopwarian.

Danke für dein Feedback. Die Reihenfolge passt so da ich diese ja auch so in meinem Service erwarte. In deinem Tutorial ist der Parentservice das letzte Argument deshalb passt die Platzierung am Ende des Services in der XML.

Komme einfach nicht weiter :frowning: