1 exception(s):
Exception #0 (LogicException): Method 'getExtensionAttributes' must be overridden in the interfaces which extend 'Magento\Framework\Api\ExtensibleDataInterface'. Concrete return type must be specified. Please fix :\Magento\Catalog\Api\Data\ProductInterface
Exception #0 (LogicException): Method 'getExtensionAttributes' must be overridden in the interfaces which extend 'Magento\Framework\Api\ExtensibleDataInterface'. Concrete return type must be specified. Please fix :\Magento\Catalog\Api\Data\ProductInterface
#0 \htdocs\magento216\vendor\magento\module-catalog\Model\Product.php(2515): Magento\Framework\Api\ExtensionAttributesFactory->create('Magento\\Catalog...')
#1 \htdocs\magento216\vendor\magento\module-catalog\Model\Product.php(2308): Magento\Catalog\Model\Product->getExtensionAttributes()
#2 \htdocs\magento216\vendor\magento\module-catalog\Model\Product.php(2288): Magento\Catalog\Model\Product->isStockStatusChanged()
#3 \htdocs\magento216\vendor\magento\framework\Interception\Interceptor.php(146): Magento\Catalog\Model\Product->getIdentities()
#4 \htdocs\magento216\var\generation\Magento\Catalog\Model\Product\Interceptor.php(52): Magento\Catalog\Model\Product\Interceptor->___callPlugins('getIdentities', Array, Array)
#5 \htdocs\magento216\vendor\magento\module-catalog-widget\Block\Product\ProductsList.php(337): Magento\Catalog\Model\Product\Interceptor->getIdentities()
#6 \htdocs\magento216\vendor\magento\module-page-cache\Model\Layout\LayoutPlugin.php(71): Magento\CatalogWidget\Block\Product\ProductsList->getIdentities()
#7 \htdocs\magento216\vendor\magento\framework\Interception\Interceptor.php(152): Magento\PageCache\Model\Layout\LayoutPlugin->afterGetOutput(Object(Magento\Framework\View\Layout\Interceptor), ' <script>\n ...')
#8 \htdocs\magento216\var\generation\Magento\Framework\View\Layout\Interceptor.php(494): Magento\Framework\View\Layout\Interceptor->___callPlugins('getOutput', Array, Array)
#9 \htdocs\magento216\vendor\magento\framework\View\Result\Page.php(243): Magento\Framework\View\Layout\Interceptor->getOutput()
#10 \htdocs\magento216\vendor\magento\framework\View\Result\Layout.php(164): Magento\Framework\View\Result\Page->render(Object(Magento\Framework\App\Response\Http\Interceptor))
#11 \htdocs\magento216\vendor\magento\framework\Interception\Interceptor.php(74): Magento\Framework\View\Result\Layout->renderResult(Object(Magento\Framework\App\Response\Http\Interceptor))
#12 \htdocs\magento216\vendor\magento\framework\Interception\Chain\Chain.php(70): Magento\Framework\View\Result\Page\Interceptor->___callParent('renderResult', Array)
#13 \htdocs\magento216\vendor\magento\framework\Interception\Chain\Chain.php(63): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Framewo...', 'renderResult', Object(Magento\Framework\View\Result\Page\Interceptor), Array, 'result-varnish-...')
#14 \htdocs\magento216\vendor\magento\module-page-cache\Model\Controller\Result\VarnishPlugin.php(74): Magento\Framework\Interception\Chain\Chain->Magento\Framework\Interception\Chain\{closure}(Object(Magento\Framework\App\Response\Http\Interceptor))
#15 \htdocs\magento216\vendor\magento\framework\Interception\Chain\Chain.php(67): Magento\PageCache\Model\Controller\Result\VarnishPlugin->aroundRenderResult(Object(Magento\Framework\View\Result\Page\Interceptor), Object(Closure), Object(Magento\Framework\App\Response\Http\Interceptor))
#16 \htdocs\magento216\vendor\magento\framework\Interception\Interceptor.php(138): Magento\Framework\Interception\Chain\Chain->invokeNext('Magento\\Framewo...', 'renderResult', Object(Magento\Framework\View\Result\Page\Interceptor), Array, 'result-builtin-...')
#17 \htdocs\magento216\vendor\magento\module-page-cache\Model\Controller\Result\BuiltinPlugin.php(67): Magento\Framework\View\Result\Page\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Response\Http\Interceptor))
#18 \htdocs\magento216\vendor\magento\framework\Interception\Interceptor.php(142): Magento\PageCache\Model\Controller\Result\BuiltinPlugin->aroundRenderResult(Object(Magento\Framework\View\Result\Page\Interceptor), Object(Closure), Object(Magento\Framework\App\Response\Http\Interceptor))
#19 \htdocs\magento216\var\generation\Magento\Framework\View\Result\Page\Interceptor.php(26): Magento\Framework\View\Result\Page\Interceptor->___callPlugins('renderResult', Array, Array)
#20 \htdocs\magento216\vendor\magento\framework\App\Http.php(139): Magento\Framework\View\Result\Page\Interceptor->renderResult(Object(Magento\Framework\App\Response\Http\Interceptor))
#21 \htdocs\magento216\vendor\magento\framework\App\Bootstrap.php(258): Magento\Framework\App\Http->launch()
#22 \htdocs\magento216\index.php(39): Magento\Framework\App\Bootstrap->run(Object(Magento\Framework\App\Http))
#23 {main}
-
share code which you have overridden.– Ronak ChauhanCommented May 26, 2017 at 12:09
-
Hello @RonakChauhan Please see my second answer.– PrakashCommented May 29, 2017 at 4:53
Add a comment
|
2 Answers
I found the solution, there was some issue in op-cache configuration.
I have commented all opcache configuration in php.ini as below:
[opcache]
;opcache.enable=1
;opcache.enable_cli=0
;opcache.memory_consumption=256
;opcache.interned_strings_buffer=12
;opcache.max_accelerated_files=16000
;opcache.max_wasted_percentage=5
;opcache.use_cwd=1
;opcache.validate_timestamps=0
;opcache.revalidate_freq=2
;opcache.revalidate_path=0
;opcache.save_comments=0
;opcache.load_comments=0
;opcache.fast_shutdown=1
;opcache.enable_file_override=1
;opcache.optimization_level=0xffffffff
;opcache.inherited_hack=1
;opcache.dups_fix=0
;opcache.blacklist_filename=
;opcache.max_file_size=0
;opcache.consistency_checks=0
;opcache.force_restart_timeout=180
;opcache.error_log=/var/log/php5/php5-opcache.error.log
;opcache.log_verbosity_level=3
;opcache.preferred_memory_model=
;opcache.protect_memory=0
This works for me.