Hello again.
Da ich keine Logik in der Plugin “Bootstrap” haben will, möchte ich dieses wie in der Vergangenheit in Services auslagern.
Mein Beispiel-Service funktioniert, da ich diesen in einem Subscriber nutze als auch im deactivate des Plugins:
public function deactivate(DeactivateContext $context): void
{
$customFieldService = $this->container->get(CustomFieldService::class);
$customFieldService->deleteCustomFieldSet($context->getContext());
parent::deactivate($context);
}
Mein Service ist wie folgt registriert:
Leider klappt der Bezug des Services nicht in der activate Methode des Plugins.
Der Aufruf sieht ja quasi identisch aus:
public function activate(ActivateContext $context): void
{
$customFieldService = $this->container->get(CustomFieldService::class);
$customFieldService->createCustomFieldSet($context->getContext());
parent::activate($context);
}
Leider knallt es:
In Container.php line 277:
You have requested a non-existent service "Mill\ProductAdvantages\Service\CustomFieldService".
Frage: Was muss getan werden, um auf eigene Services auch im activate() zugreifen zu können?
Schöne Grüße,
Niklas