【发布时间】:2014-10-23 02:28:42
【问题描述】:
我已经阅读了几篇关于这个主题的堆栈溢出帖子,他们提到在控制器中你可以使用$this->getServiceLocator()->get('HttpRenderer') 或类似的东西。
但是,根据下面抛出的异常,我无法获得HttpRenderer 服务。我做错了什么?
======================================================================
The application has thrown an exception!
======================================================================
Zend\ServiceManager\Exception\ServiceNotFoundException
Zend\ServiceManager\ServiceManager::get was unable to fetch or create an instance for HttpRenderer
----------------------------------------------------------------------
/var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php:529
#0 /var/opt/projects/MYAPP/web/module/Application/src/Application/Controller/CronController.php(53): Zend\ServiceManager\ServiceManager->get('HttpRenderer')
#1 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractActionController.php(83): Application\Controller\CronController->mailAction()
#2 [internal function]: Zend\Mvc\Controller\AbstractActionController->onDispatch(Object(Zend\Mvc\MvcEvent))
#3 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468): call_user_func(Array, Object(Zend\Mvc\MvcEvent))
#4 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(207): Zend\EventManager\EventManager->triggerListeners('dispatch', Object(Zend\Mvc\MvcEvent), Object(Closure))
#5 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractController.php(117): Zend\EventManager\EventManager->trigger('dispatch', Object(Zend\Mvc\MvcEvent), Object(Closure))
#6 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/Mvc/DispatchListener.php(114): Zend\Mvc\Controller\AbstractController->dispatch(Object(Zend\Console\Request), Object(Zend\Console\Response))
#7 [internal function]: Zend\Mvc\DispatchListener->onDispatch(Object(Zend\Mvc\MvcEvent))
#8 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468): call_user_func(Array, Object(Zend\Mvc\MvcEvent))
#9 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(207): Zend\EventManager\EventManager->triggerListeners('dispatch', Object(Zend\Mvc\MvcEvent), Object(Closure))
#10 /var/opt/projects/MYAPP/web/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php(313): Zend\EventManager\EventManager->trigger('dispatch', Object(Zend\Mvc\MvcEvent), Object(Closure))
#11 /var/opt/projects/MYAPP/web/public/index.php(30): Zend\Mvc\Application->run()
#12 {main}
======================================================================
【问题讨论】:
标签: php model-view-controller zend-framework2 service-locator