Controller auto-regristrierung schlägt fehl

Sehr geehrte Shopware Community,

ich bin gerade dabei ein (Frontend-)Plugin zu entwickeln. Dieses erweitert das Accountmenü für speziell für Händler. Das Plugin besteht aus einer View und einem Controller mit lediglich einer public Action. Wenn ich das Frontend-Plugin als eigenes Plugin entwickle, dann funktioniert alles wie gewünscht nach der Installation. Nach erfolgreichem Testen wollte ich es jedoch in ein bestehendes Plugin integrieren , also habe ich die Bootstrap.php um das entsprechende Event erweitert und das Controller sowie das Ressourcen Verzeichnis kopiert. (Beide Verzeichnisse waren im bestehenden Plugin nicht vorhanden) Jedoch scheint die Controller Auto-Registration nicht mehr zu funktionieren, da der Request auf die entsprechende Frontend-Url über Shopware geroutet wird. ( Wo der Controller unter …engine\Library\Enlight\Controller\Dispatcher\Default.php nicht gefunden wird)

Anbei der Code um den das bestehende Plugin erweitert wurde:

Bootstrap.php:

**class Generator**  **extends** Plugin **implements** SubscriberInterface { **public static function** getSubscribedEvents() { **return** [**'Enlight\_Controller\_Dispatcher\_ControllerPath\_Frontend\_ForumQuestion'** =\> **'onGetFrontendController'** , **'Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Account'** =\> **'onGetAccountDetails'**]; } **public function** onGetAccountDetails(Enlight\_Event\_EventArgs $args){ $controller = $args-\>getSubject(); $controller-\>View()-\>addTemplateDir($this-\>getPath() . **'/Resources/views'** ); } 

**public function** onGetFrontendController(Enlight\_Event\_EventArgs $args) { $this-\> **container** -\>get( **'template'** )-\>addTemplateDir($this-\>getPath() . **'/Resources/views'** ); **return** $this-\>getPath() . **'/Controllers/Frontend/ForumQuestion.php'** ; }

Generator/Controllers/Frontend/ForumQuestion.php:

 

**class** Shopware\_Controllers\_Frontend\_ForumQuestion **extends** Enlight\_Controller\_Action {

**public function** selectAction($errors = **null** ){

 }

 

Früher konnte ich diese Action über localhost/forumQuestion/select im Frontend aufrufen, jetzt erhalte ich dabei folgende Fehlermeldung:

Fatal error: Uncaught Enlight_Controller_Exception: Controller “forumQuestion” not found in C:\Projects\xampp7\htdocs\engine\Library\Enlight\Controller\Dispatcher\Default.php on line 488( ! ) Enlight_Controller_Exception: Controller “forumQuestion” not found in C:\Projects\xampp7\htdocs\engine\Library\Enlight\Controller\Dispatcher\Default.php on line _488_Call Stack#TimeMemoryFunctionLocation10.0007372760{main}( )…\shopware.php : 020.03382863888Shopware\Components\HttpCache\AppCache->handle( )…\shopware.php : 11830.03402866464Shopware\Components\HttpCache\AppCache->handle( )…\AppCache.php : 11640.03452879608Shopware\Components\HttpCache\AppCache->lookup( )…\HttpCache.php : 20350.03452879608Shopware\Components\HttpCache\AppCache->lookup( )…\AppCache.php : 18960.03472880232Shopware\Components\HttpCache\AppCache->fetch( )…\HttpCache.php : 33770.03482881408Shopware\Components\HttpCache\AppCache->forward( )…\HttpCache.php : 44180.08015030720Shopware\Components\HttpCache\AppCache->forward( )…\AppCache.php : 26890.08015033480Shopware\Kernel->handle( )…\HttpCache.php : 484100.14728691368Shopware_Proxies_EnlightControllerFrontProxy->dispatch( )…\Kernel.php : 191

 

Ich habe die Klassennamen im Zuge des Forumposts anonymisiert. Zur Entwicklung verwende ich den WAMP-Stack mit xdebug und der neuesten Shopware Version von der Shopware Website (dürfte version 5.3 sein). Ich habe im Zuge des Debuggings, schon mehrmals das Plugin neu installiert, alle Cashes mehrfach geleert, den Ikognito-Modus versucht , sowie das Frontend Plugin wieder als eigenes isoliert installiert. (damit funktioniert es wieder)

Was ich mir nicht erklären kann: Ich habe bei der Integration in das bestehende Plugin grundsätzlich nur Code übernommen, ich habe die Verzeichnisse 1:1 kopiert, somit verbleibt der Code im Grunde derselbe. Evtl. kann mir hier wer mit Erfahrungswerten weiterhelfen.

Besten Dank!
 

Eventuell noch anzumerken ist, dass ich auf einer frischen Neuinstallation entwickle (im Zuge des Debuggings neu installiert), daher es sind zusätzlich keine anderen Plugins installiert außer den Demo-Daten DE. Alles Weitere wurde deaktiviert / deinstalliert.