0
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}
2
  • share code which you have overridden. Commented May 26, 2017 at 12:09
  • Hello @RonakChauhan Please see my second answer.
    – Prakash
    Commented May 29, 2017 at 4:53

2 Answers 2

0

I found the solution, there was some issue in op-cache configuration.

1
  • Seem that you found the solution. :) Commented May 29, 2017 at 4:45
0

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.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.