Goal: install php modules for memcache and memcached on Plesk Onyx 17 to improve performance of PHP scripts on your server.
Tag Archives: service
Symfony2: InactiveScopeException and request
Error message: You cannot create a service (“request”) of an inactive scope (“request”).
[Symfony\Component\DependencyInjection\Exception\InactiveScopeException] You cannot create a service ("request") of an inactive scope ("request").
This message is written, when you’re invoking a command on the command line, e.g.
php app/console assetic:dump
Reason: you are using a request object, but this is not available on the command line / cli
The error was in my case that I used an object in my service configuration that references the request object (MobileDetectBundle).
Solution: remove reference for command line
Step 1 was to use a setter for the reference
Step 2 was to create a special compiler pass in the bundle configuration
Source code (based on https://github.com/suncat2000/MobileDetectBundle/commit/73e78070ca7340c9774c19dde3c8460435b0e284 – thanks suncat2000!)
<?php namespace Acm\DemoBundle\DependencyInjection\Compiler; use Symfony\Component\DependencyInjection\Reference; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; /** * CLI listener */ class CLIListenerPass implements CompilerPassInterface { /** * If CLI, when remove setMobileDetector method from definition mobile_detect.twig.extension * @param ContainerBuilder $container */ public function process(ContainerBuilder $container) { if (php_sapi_name() == "cli") { $definition = $container->getDefinition('acme_demo.extension.my_service'); $definition->removeMethodCall('setMobileDetector'); } } }