I've searched the forum (and the rest of the web as well) but can't find anyone else with a similar problem.
After uninstalling an extension and a theme (newsmartwave porto, including extension megamenu) I can no longer access my categories page in the backend.
All cache has been deleted, sites been re-indexed and I have also done a setup:static-content:deploy
None has had any effect so far, and I can't figure out what's gone wrong.
I am inserting the report from /var/report/ to this to see if anyone can figure what's wrong.
a:4:{i:0;s:61:"Class Smartwave\Megamenu\Model\Attribute\Width does not exist";i:1;s:14136:"#0 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Code/Reader/ClassReader.php(19): ReflectionClass->__construct('Smartwave\\Megam...') #1 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/Definition/Runtime.php(44): Magento\Framework\Code\Reader\ClassReader->getConstructor('Smartwave\\Megam...') #2 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(71): Magento\Framework\ObjectManager\Definition\Runtime->getParameters('Smartwave\\Megam...') #3 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/ObjectManager.php(57): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Smartwave\\Megam...', Array) #4 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Validator/UniversalFactory.php(36): Magento\Framework\ObjectManager\ObjectManager->create('Smartwave\\Megam...', Array) #5 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-eav/Model/Entity/Attribute/AbstractAttribute.php(537): Magento\Framework\Validator\UniversalFactory->create('Smartwave\\Megam...') #6 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/ResourceModel/Eav/Attribute/Interceptor.php(1129): Magento\Eav\Model\Entity\Attribute\AbstractAttribute->getSource() #7 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Model/Category/DataProvider.php(245): Magento\Catalog\Model\ResourceModel\Eav\Attribute\Interceptor->getSource() #8 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(146): Magento\Catalog\Model\Category\DataProvider->getAttributesMeta(Object(Magento\Eav\Model\Entity\Type)) #9 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/Category/DataProvider/Interceptor.php(52): Magento\Catalog\Model\Category\DataProvider\Interceptor->___callPlugins('getAttributesMe...', Array, Array) #10 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Model/Category/DataProvider.php(167): Magento\Catalog\Model\Category\DataProvider\Interceptor->getAttributesMeta(Object(Magento\Eav\Model\Entity\Type)) #11 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(146): Magento\Catalog\Model\Category\DataProvider->prepareMeta(Array) #12 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/Category/DataProvider/Interceptor.php(26): Magento\Catalog\Model\Category\DataProvider\Interceptor->___callPlugins('prepareMeta', Array, Array) #13 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Model/Category/DataProvider.php(154): Magento\Catalog\Model\Category\DataProvider\Interceptor->prepareMeta(Array) #14 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/Category/DataProvider/Interceptor.php(14): Magento\Catalog\Model\Category\DataProvider->__construct('category_form_d...', 'entity_id', 'id', Object(Magento\Ui\DataProvider\EavValidationRules), Object(Magento\Catalog\Model\ResourceModel\Category\CollectionFactory), Object(Magento\Store\Model\StoreManager), Object(Magento\Framework\Registry), Object(Magento\Eav\Model\Config), Object(Magento\Framework\App\Request\Http), Object(Magento\Catalog\Model\CategoryFactory), Array, Array) #15 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(93): Magento\Catalog\Model\Category\DataProvider\Interceptor->__construct('category_form_d...', 'entity_id', 'id', Object(Magento\Ui\DataProvider\EavValidationRules), Object(Magento\Catalog\Model\ResourceModel\Category\CollectionFactory), Object(Magento\Store\Model\StoreManager), Object(Magento\Framework\Registry), Object(Magento\Eav\Model\Config), Object(Magento\Framework\App\Request\Http), Object(Magento\Catalog\Model\CategoryFactory), Array, Array) #16 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(89): Magento\Framework\ObjectManager\Factory\AbstractFactory->createObject('Magento\\Catalog...', Array) #17 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/ObjectManager.php(57): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Magento\\Catalog...', Array) #18 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Element/UiComponent/Argument/Interpreter/ConfigurableObject.php(60): Magento\Framework\ObjectManager\ObjectManager->create('Magento\\Catalog...', Array) #19 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/Data/Argument/InterpreterInterface/Proxy.php(95): Magento\Framework\View\Element\UiComponent\Argument\Interpreter\ConfigurableObject->evaluate(Array) #20 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Data/Argument/Interpreter/Composite.php(61): Magento\Framework\Data\Argument\InterpreterInterface\Proxy->evaluate(Array) #21 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-ui/Model/Manager.php(188): Magento\Framework\Data\Argument\Interpreter\Composite->evaluate(Array) #22 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-ui/Model/Manager.php(191): Magento\Ui\Model\Manager->evaluateComponentArguments(Array) #23 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-ui/Model/Manager.php(172): Magento\Ui\Model\Manager->evaluateComponentArguments(Array) #24 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Element/UiComponentFactory.php(144): Magento\Ui\Model\Manager->prepareData('category_form') #25 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Generator/UiComponent.php(124): Magento\Framework\View\Element\UiComponentFactory->create('category_form', NULL, Array) #26 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Generator/UiComponent.php(93): Magento\Framework\View\Layout\Generator\UiComponent->generateComponent(Object(Magento\Framework\View\Layout\Data\Structure), 'category_form', Array, Object(Magento\Framework\View\Layout\Interceptor)) #27 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/GeneratorPool.php(86): Magento\Framework\View\Layout\Generator\UiComponent->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context)) #28 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout.php(327): Magento\Framework\View\Layout\GeneratorPool->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context)) #29 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/View/Layout/Interceptor.php(89): Magento\Framework\View\Layout->generateElements() #30 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Builder.php(129): Magento\Framework\View\Layout\Interceptor->generateElements() #31 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Page/Builder.php(55): Magento\Framework\View\Layout\Builder->generateLayoutBlocks() #32 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Builder.php(65): Magento\Framework\View\Page\Builder->generateLayoutBlocks() #33 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout.php(244): Magento\Framework\View\Layout\Builder->build() #34 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout.php(859): Magento\Framework\View\Layout->build() #35 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/View/Layout/Interceptor.php(414): Magento\Framework\View\Layout->getBlock('menu') #36 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/Model/View/Result/Page.php(59): Magento\Framework\View\Layout\Interceptor->getBlock('menu') #37 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Backend/Model/View/Result/Page/Interceptor.php(24): Magento\Backend\Model\View\Result\Page->setActiveMenu('Magento_Catalog...') #38 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Controller/Adminhtml/Category/Edit.php(102): Magento\Backend\Model\View\Result\Page\Interceptor->setActiveMenu('Magento_Catalog...') #39 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Controller/Adminhtml/Category/Edit/Interceptor.php(24): Magento\Catalog\Controller\Adminhtml\Category\Edit->execute() #40 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/Action/Action.php(102): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->execute() #41 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/App/AbstractAction.php(226): Magento\Framework\App\Action\Action->dispatch(Object(Magento\Framework\App\Request\Http)) #42 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(74): Magento\Backend\App\AbstractAction->dispatch(Object(Magento\Framework\App\Request\Http)) #43 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->___callParent('dispatch', Array) #44 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Catalog...', 'dispatch', Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Array, 'adminAuthentica...') #45 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/App/Action/Plugin/Authentication.php(143): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Request\Http)) #46 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(67): Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch(Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #47 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Catalog...', 'dispatch', Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Array, 'adminMassaction...') #48 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/App/Action/Plugin/MassactionKey.php(33): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http)) #49 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(142): Magento\Backend\App\Action\Plugin\MassactionKey->aroundDispatch(Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #50 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Controller/Adminhtml/Category/Edit/Interceptor.php(39): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->___callPlugins('dispatch', Array, Array) #51 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/FrontController.php(55): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http)) #52 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(74): Magento\Framework\App\FrontController->dispatch(Object(Magento\Framework\App\Request\Http)) #53 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Framework\App\FrontController\Interceptor->___callParent('dispatch', Array) #54 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Framewo...', 'dispatch', Object(Magento\Framework\App\FrontController\Interceptor), Array, 'install') #55 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Module/Plugin/DbStatusValidator.php(69): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Request\Http)) #56 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(67): Magento\Framework\Module\Plugin\DbStatusValidator->aroundDispatch(Object(Magento\Framework\App\FrontController\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #57 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Framewo...', 'dispatch', Object(Magento\Framework\App\FrontController\Interceptor), Array, 'infortis_cgen_m...') #58 /mnt/persist/www/magento-odelay/magento2/app/code/Infortis/Cgen/Plugin/Magento/Framework/App/FrontController.php(32): Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http)) #59 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(142): Infortis\Cgen\Plugin\Magento\Framework\App\FrontController->aroundDispatch(Object(Magento\Framework\App\FrontController\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #60 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/App/FrontController/Interceptor.php(26): Magento\Framework\App\FrontController\Interceptor->___callPlugins('dispatch', Array, Array) #61 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/Http.php(135): Magento\Framework\App\FrontController\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http)) #62 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/Bootstrap.php(258): Magento\Framework\App\Http->launch() #63 /mnt/persist/www/magento-odelay/magento2/index.php(39): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http)) #64 {main}";s:3:"url";s:100:"/friman/catalog/category/index/key/16d4f9f603a742811796a367e9f8a2b2e5dd15715c653156705be143dfe209db/";s:11:"script_name";s:10:"/index.php";}
Solved! Go to Solution.
@digitall, I didn't read the exception trace carefuly enough, my beg. This extension added some new category attribute and didn't remove it on uninstall. You have to find it and remove manually.
To find it you have to run following query in your database (in either console or phpMyAdmin):
SELECT attribute_id FROM eav_attribute WHERE source_model = 'Smartwave\\Megamenu\\Model\\Attribute\\Width' AND entity_type_id IN (SELECT entity_type_id FROM eav_entity_type WHERE entity_type_code = 'catalog_category');
once you get ID of this attribute, you can delete it with following query (or you can find it in in eav_attribute table and delete using GUI of your choice, eg. phpMyAdmin):
DELETE FROM eav_attribute WHERE attribute_id = ATTRIBUTE_ID_FROM_PREVIOUS_QUERY;
As always, I strongly recommend to backup your DB prior to direct operations on the database.
Cheers,
BX
Hi @digitall
it seems that old DI auto-generated classes still exist. Please run following command in the console, it should do the job:
$ cd /mnt/persist/www/magento-odelay/magento2
$ rm -rf var/generation/*
Cheers,
BX
Hi @Benoit Xylo, and thanks for helping out! Tried that, but no effect, generation is now empty, here's the new report
#2 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(71): Magento\Framework\ObjectManager\Definition\Runtime->getParameters('Smartwave\\Megam...') #3 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/ObjectManager.php(57): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Smartwave\\Megam...', Array) #4 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Validator/UniversalFactory.php(36): Magento\Framework\ObjectManager\ObjectManager->create('Smartwave\\Megam...', Array) #5 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-eav/Model/Entity/Attribute/AbstractAttribute.php(537): Magento\Framework\Validator\UniversalFactory->create('Smartwave\\Megam...') #6 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/ResourceModel/Eav/Attribute/Interceptor.php(1129): Magento\Eav\Model\Entity\Attribute\AbstractAttribute->getSource() #7 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Model/Category/DataProvider.php(245): Magento\Catalog\Model\ResourceModel\Eav\Attribute\Interceptor->getSource() #8 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(146): Magento\Catalog\Model\Category\DataProvider->getAttributesMeta(Object(Magento\Eav\Model\Entity\Type)) #9 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/Category/DataProvider/Interceptor.php(52): Magento\Catalog\Model\Category\DataProvider\Interceptor->___callPlugins('getAttributesMe...', Array, Array) #10 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Model/Category/DataProvider.php(167): Magento\Catalog\Model\Category\DataProvider\Interceptor->getAttributesMeta(Object(Magento\Eav\Model\Entity\Type)) #11 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(146): Magento\Catalog\Model\Category\DataProvider->prepareMeta(Array) #12 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/Category/DataProvider/Interceptor.php(26): Magento\Catalog\Model\Category\DataProvider\Interceptor->___callPlugins('prepareMeta', Array, Array) #13 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Model/Category/DataProvider.php(154): Magento\Catalog\Model\Category\DataProvider\Interceptor->prepareMeta(Array) #14 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Model/Category/DataProvider/Interceptor.php(14): Magento\Catalog\Model\Category\DataProvider->__construct('category_form_d...', 'entity_id', 'id', Object(Magento\Ui\DataProvider\EavValidationRules), Object(Magento\Catalog\Model\ResourceModel\Category\CollectionFactory), Object(Magento\Store\Model\StoreManager), Object(Magento\Framework\Registry), Object(Magento\Eav\Model\Config), Object(Magento\Framework\App\Request\Http), Object(Magento\Catalog\Model\CategoryFactory), Array, Array) #15 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(93): Magento\Catalog\Model\Category\DataProvider\Interceptor->__construct('category_form_d...', 'entity_id', 'id', Object(Magento\Ui\DataProvider\EavValidationRules), Object(Magento\Catalog\Model\ResourceModel\Category\CollectionFactory), Object(Magento\Store\Model\StoreManager), Object(Magento\Framework\Registry), Object(Magento\Eav\Model\Config), Object(Magento\Framework\App\Request\Http), Object(Magento\Catalog\Model\CategoryFactory), Array, Array) #16 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(89): Magento\Framework\ObjectManager\Factory\AbstractFactory->createObject('Magento\\Catalog...', Array) #17 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/ObjectManager/ObjectManager.php(57): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Magento\\Catalog...', Array) #18 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Element/UiComponent/Argument/Interpreter/ConfigurableObject.php(60): Magento\Framework\ObjectManager\ObjectManager->create('Magento\\Catalog...', Array) #19 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/Data/Argument/InterpreterInterface/Proxy.php(95): Magento\Framework\View\Element\UiComponent\Argument\Interpreter\ConfigurableObject->evaluate(Array) #20 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Data/Argument/Interpreter/Composite.php(61): Magento\Framework\Data\Argument\InterpreterInterface\Proxy->evaluate(Array) #21 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-ui/Model/Manager.php(188): Magento\Framework\Data\Argument\Interpreter\Composite->evaluate(Array) #22 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-ui/Model/Manager.php(191): Magento\Ui\Model\Manager->evaluateComponentArguments(Array) #23 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-ui/Model/Manager.php(172): Magento\Ui\Model\Manager->evaluateComponentArguments(Array) #24 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Element/UiComponentFactory.php(144): Magento\Ui\Model\Manager->prepareData('category_form') #25 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Generator/UiComponent.php(124): Magento\Framework\View\Element\UiComponentFactory->create('category_form', NULL, Array) #26 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Generator/UiComponent.php(93): Magento\Framework\View\Layout\Generator\UiComponent->generateComponent(Object(Magento\Framework\View\Layout\Data\Structure), 'category_form', Array, Object(Magento\Framework\View\Layout\Interceptor)) #27 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/GeneratorPool.php(86): Magento\Framework\View\Layout\Generator\UiComponent->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context)) #28 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout.php(327): Magento\Framework\View\Layout\GeneratorPool->process(Object(Magento\Framework\View\Layout\Reader\Context), Object(Magento\Framework\View\Layout\Generator\Context)) #29 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/View/Layout/Interceptor.php(89): Magento\Framework\View\Layout->generateElements() #30 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Builder.php(129): Magento\Framework\View\Layout\Interceptor->generateElements() #31 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Page/Builder.php(55): Magento\Framework\View\Layout\Builder->generateLayoutBlocks() #32 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout/Builder.php(65): Magento\Framework\View\Page\Builder->generateLayoutBlocks() #33 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout.php(244): Magento\Framework\View\Layout\Builder->build() #34 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/View/Layout.php(859): Magento\Framework\View\Layout->build() #35 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/View/Layout/Interceptor.php(414): Magento\Framework\View\Layout->getBlock('menu') #36 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/Model/View/Result/Page.php(59): Magento\Framework\View\Layout\Interceptor->getBlock('menu') #37 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Backend/Model/View/Result/Page/Interceptor.php(24): Magento\Backend\Model\View\Result\Page->setActiveMenu('Magento_Catalog...') #38 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-catalog/Controller/Adminhtml/Category/Edit.php(102): Magento\Backend\Model\View\Result\Page\Interceptor->setActiveMenu('Magento_Catalog...') #39 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Controller/Adminhtml/Category/Edit/Interceptor.php(24): Magento\Catalog\Controller\Adminhtml\Category\Edit->execute() #40 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/Action/Action.php(102): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->execute() #41 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/App/AbstractAction.php(226): Magento\Framework\App\Action\Action->dispatch(Object(Magento\Framework\App\Request\Http)) #42 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(74): Magento\Backend\App\AbstractAction->dispatch(Object(Magento\Framework\App\Request\Http)) #43 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->___callParent('dispatch', Array) #44 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Catalog...', 'dispatch', Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Array, 'adminAuthentica...') #45 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/App/Action/Plugin/Authentication.php(143): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Request\Http)) #46 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(67): Magento\Backend\App\Action\Plugin\Authentication->aroundDispatch(Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #47 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Catalog...', 'dispatch', Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Array, 'adminMassaction...') #48 /mnt/persist/www/magento-odelay/magento2/vendor/magento/module-backend/App/Action/Plugin/MassactionKey.php(33): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http)) #49 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(142): Magento\Backend\App\Action\Plugin\MassactionKey->aroundDispatch(Object(Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #50 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Catalog/Controller/Adminhtml/Category/Edit/Interceptor.php(39): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->___callPlugins('dispatch', Array, Array) #51 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/FrontController.php(55): Magento\Catalog\Controller\Adminhtml\Category\Edit\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http)) #52 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(74): Magento\Framework\App\FrontController->dispatch(Object(Magento\Framework\App\Request\Http)) #53 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(70): Magento\Framework\App\FrontController\Interceptor->___callParent('dispatch', Array) #54 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Framewo...', 'dispatch', Object(Magento\Framework\App\FrontController\Interceptor), Array, 'install') #55 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Module/Plugin/DbStatusValidator.php(69): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Request\Http)) #56 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Chain/Chain.php(67): Magento\Framework\Module\Plugin\DbStatusValidator->aroundDispatch(Object(Magento\Framework\App\FrontController\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #57 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(138): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Framewo...', 'dispatch', Object(Magento\Framework\App\FrontController\Interceptor), Array, 'infortis_cgen_m...') #58 /mnt/persist/www/magento-odelay/magento2/app/code/Infortis/Cgen/Plugin/Magento/Framework/App/FrontController.php(32): Magento\Framework\App\FrontController\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http)) #59 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/Interception/Interceptor.php(142): Infortis\Cgen\Plugin\Magento\Framework\App\FrontController->aroundDispatch(Object(Magento\Framework\App\FrontController\Interceptor), Object(Closure), Object(Magento\Framework\App\Request\Http)) #60 /mnt/persist/www/magento-odelay/magento2/var/generation/Magento/Framework/App/FrontController/Interceptor.php(26): Magento\Framework\App\FrontController\Interceptor->___callPlugins('dispatch', Array, Array) #61 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/Http.php(135): Magento\Framework\App\FrontController\Interceptor->dispatch(Object(Magento\Framework\App\Request\Http)) #62 /mnt/persist/www/magento-odelay/magento2/vendor/magento/framework/App/Bootstrap.php(258): Magento\Framework\App\Http->launch() #63 /mnt/persist/www/magento-odelay/magento2/index.php(39): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http)) #64 {main}";s:3:"url";s:100:"/friman/catalog/category/index/key/0085140b145b2f084af08e3f36990c244127abe573f1d6e52c6919f279616e91/";s:11:"script_name";s:10:"/index.php";}
@digitall, I didn't read the exception trace carefuly enough, my beg. This extension added some new category attribute and didn't remove it on uninstall. You have to find it and remove manually.
To find it you have to run following query in your database (in either console or phpMyAdmin):
SELECT attribute_id FROM eav_attribute WHERE source_model = 'Smartwave\\Megamenu\\Model\\Attribute\\Width' AND entity_type_id IN (SELECT entity_type_id FROM eav_entity_type WHERE entity_type_code = 'catalog_category');
once you get ID of this attribute, you can delete it with following query (or you can find it in in eav_attribute table and delete using GUI of your choice, eg. phpMyAdmin):
DELETE FROM eav_attribute WHERE attribute_id = ATTRIBUTE_ID_FROM_PREVIOUS_QUERY;
As always, I strongly recommend to backup your DB prior to direct operations on the database.
Cheers,
BX
Big thanks for the quick response and the solution @Benoit Xylo! This solved the problem (i added three other entities in eav_attribute that had the Smartwave/megamenu path just to be sure)
No problem, I am glad you could solve your issue. BTW such extensions should be blacklisted somewhere publicly, especially Magento 2 implemented (finally) uninstall scripts handling, so each module should clean up after itself on remove.
Cheers,
BX
Totally agree on that.
Thanks again :-D
Worked for me.. Cheers
Smartwave themes themselves should be blacklisted.
They tried blackmailing me $4,000 for an integrators licence when I added 2 domains to my site and then they disabled my site theme from their end.
Hi, can you tell more about the Porto theme issue?
Is it true the developer and stop your theme remotely?
I encounter their bad support and the theme doesn't work well recently.
thank you.