GX-Bug #68305
Von Till Tepelmann vor fast 4 Jahren aktualisiert
Wenn man eine Überladung des AdminApplicationTopExtenderComponent nutzt, ist die Methode proceed nicht mehr kompatibel mit allen bekannten und im Umlauf befindtlichen Drittanbieter Modulen. Kann wie folgt reproduziert werden: 1. Eine Datei im Ordner /GXModules/Test/Test/Admin/Overloads/AdminApplicationTopExtenderComponent/ anlegen 2. Die Datei sollte TestAdminApplicationTopExtenderComponent.inc.php heißen 3. Folgenden Inhalt in die Datei einfügen: ``` <?php class TestAdminApplicationTopExtenderComponent extends TestAdminApplicationTopExtenderComponent_parent { public function proceed() { parent::proceed(); } } ``` 4. Cache für Modulinformationen unter "Toolbox->Cache" erneuern Erwartetes Ergebnis: Der Gambio Admin ist nach dem erneuern des Caches für Modulinformationen weiterhin nutzbar und wirft keine Fehler Tatsächliches Ergebnis: Der Gambio Admin ist nach dem erneuen des Caches für Modulinformnationen nicht mehr aufrufbar und nutzabr. Es wird ein Fatal Error angezeigt ------ When using an overload of the AdminApplicationTopExtenderComponent, the method proceed is no longer compatible with all known and circulating third party modules. Can be reproduced as follows: 1. create a file in the folder /GXModules/Test/Admin/Overloads/AdminApplicationTopExtenderComponent/. 2. the file should be named TestAdminApplicationTopExtenderComponent.inc.php 3. add the following content to the file: ``` <?php class TestAdminApplicationTopExtenderComponent extends TestAdminApplicationTopExtenderComponent_parent { public function proceed() { parent::proceed(); } } ``` 4. renew cache for module information under "Toolbox->Cache". Expected result: The Gambio Admin is still usable after renewing the cache for module information and does not throw any errors. Actual result: The Gambio Admin is no longer accessible and usable after refreshing the cache for module information. A fatal error is displayed ------ ``` Declaration of TestAdminApplicationTopExtenderComponent::proceed() must be compatible with SetupWizardShippingModuleInstalled::proceed(): void ```