{
if ('service_container' === $id) {
return $this;
}
if (\is_string($load)) {
throw new RuntimeException($load);
}
if (null === $method) {
return false !== $registry ? $this->{$registry}[$id] ?? null : null;
}
if (false !== $registry) {
*
* @return mixed
*/
public function get(string $id)
{
return isset($this->serviceMap[$id]) ? ($this->factory)(...$this->serviceMap[$id]) : parent::get($id);
}
/**
* {@inheritdoc}
*/
$i = strrpos($controller, ':');
$controller = substr($controller, 0, $i).strtolower(substr($controller, $i));
}
try {
yield $this->container->get($controller)->get($argument->getName());
} catch (RuntimeException $e) {
$what = sprintf('argument $%s of "%s()"', $argument->getName(), $controller);
$message = preg_replace('/service "\.service_locator\.[^"]++"/', $what, $e->getMessage());
if ($e->getMessage() === $message) {
public function resolve(Request $request, ArgumentMetadata $argument): iterable
{
$method = \get_class($this->inner).'::'.__FUNCTION__;
$this->stopwatch->start($method, 'controller.argument_value_resolver');
yield from $this->inner->resolve($request, $argument);
$this->stopwatch->stop($method);
}
}
}
$resolved = $resolver->resolve($request, $metadata);
$atLeastOne = false;
foreach ($resolved as $append) {
$atLeastOne = true;
$arguments[] = $append;
}
if (!$atLeastOne) {
public function getArguments(Request $request, callable $controller)
{
$e = $this->stopwatch->start('controller.get_arguments');
try {
return $this->resolver->getArguments($request, $controller);
} finally {
$e->stop();
}
}
}
$event = new ControllerEvent($this, $controller, $request, $type);
$this->dispatcher->dispatch($event, KernelEvents::CONTROLLER);
$controller = $event->getController();
// controller arguments
$arguments = $this->argumentResolver->getArguments($request, $controller);
$event = new ControllerArgumentsEvent($this, $controller, $arguments, $request, $type);
$this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);
$controller = $event->getController();
$arguments = $event->getArguments();
{
$request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
$this->requestStack->push($request);
try {
return $this->handleRaw($request, $type);
} catch (\Exception $e) {
if ($e instanceof RequestExceptionInterface) {
$e = new BadRequestHttpException($e->getMessage(), $e);
}
if (false === $catch) {
$this->boot();
++$this->requestStackSize;
$this->resetServices = true;
try {
return $this->getHttpKernel()->handle($request, $type, $catch);
} finally {
--$this->requestStackSize;
}
}
Request::setTrustedHosts([$trustedHosts]);
}
$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
No log messages
RuntimeException
|
---|
Symfony\Component\DependencyInjection\Exception\RuntimeException: Cannot autowire argument $knpPaginator of "Aviatur\HotelBundle\Controller\HotelController::listAction()": it references class "Knp\Component\Pager\Paginator" but no such service exists. Try changing the type-hint to "Knp\Component\Pager\PaginatorInterface" instead. at vendor/symfony/dependency-injection/Container.php:421 at Symfony\Component\DependencyInjection\Container->getService() (vendor/symfony/dependency-injection/Argument/ServiceLocator.php:42) at Symfony\Component\DependencyInjection\Argument\ServiceLocator->get() (vendor/symfony/http-kernel/Controller/ArgumentResolver/ServiceValueResolver.php:77) at Symfony\Component\HttpKernel\Controller\ArgumentResolver\ServiceValueResolver->resolve() (vendor/symfony/http-kernel/Controller/ArgumentResolver/TraceableValueResolver.php:58) at Symfony\Component\HttpKernel\Controller\ArgumentResolver\TraceableValueResolver->resolve() (vendor/symfony/http-kernel/Controller/ArgumentResolver.php:58) at Symfony\Component\HttpKernel\Controller\ArgumentResolver->getArguments() (vendor/symfony/http-kernel/Controller/TraceableArgumentResolver.php:39) at Symfony\Component\HttpKernel\Controller\TraceableArgumentResolver->getArguments() (vendor/symfony/http-kernel/HttpKernel.php:155) at Symfony\Component\HttpKernel\HttpKernel->handleRaw() (vendor/symfony/http-kernel/HttpKernel.php:75) at Symfony\Component\HttpKernel\HttpKernel->handle() (vendor/symfony/http-kernel/Kernel.php:202) at Symfony\Component\HttpKernel\Kernel->handle() (web/index.php:24) |