Symfony Exception

TypeError

HTTP 500 Internal Server Error

App\Entity\Product::getNameAr(): Return value must be of type string, null returned

Exception

TypeError

  1.         return $text;
  2.     }
  3.     public function getNameAr(): string
  4.     {
  5.         return $this->nameAr;
  6.     }
  7.     public function setNameAr(string $nameAr): void
  8.     {
  9.         $this->nameAr $nameAr;
  1.     }
  2.     // Some objects throw exceptions when they have __call, and the method we try
  3.     // to call is not supported. If ignoreStrictCheck is true, we should return null.
  4.     try {
  5.         $ret $object->$method(...$arguments);
  6.     } catch (\BadMethodCallException $e) {
  7.         if ($call && ($ignoreStrictCheck || !$env->isStrictVariables())) {
  8.             return;
  9.         }
  10.         throw $e;
  1.         echo "\">
  2.             <div>
  3.                 <div class=\"title\">
  4.                     ";
  5.         // line 9
  6.         if (((twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'9$this->source); })()), "request", [], "any"falsefalsefalse9), "locale", [], "any"falsefalsefalse9) == "ar") && twig_get_attribute($this->env$this->source, (isset($context["product"]) || array_key_exists("product"$context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.'9$this->source); })()), "nameAr", [], "any"falsefalsefalse9))) {
  7.             // line 10
  8.             echo "                        ";
  9.             $context["name"] = twig_get_attribute($this->env$this->source, (isset($context["product"]) || array_key_exists("product"$context) ? $context["product"] : (function () { throw new RuntimeError('Variable "product" does not exist.'10$this->source); })()), "nameAr", [], "any"falsefalsefalse10);
  10.             // line 11
  11.             echo "                    ";
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
  1.         foreach ($context['_seq'] as $context["index"] => $context["product"]) {
  2.             // line 16
  3.             echo "        <div class=\"col-12 col-sm-6 col-md-4\">
  4.             ";
  5.             // line 17
  6.             $this->loadTemplate("component/boxes.html.twig""component/products-list.html.twig"17)->display(twig_array_merge($context, ["product" => $context["product"]]));
  7.             // line 18
  8.             echo "        </div>
  9.     ";
  10.             ++$context['loop']['index0'];
  11.             ++$context['loop']['index'];
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
  1.         // line 57
  2.         echo "            </div>
  3.             <div class=\"col-12 col-md-9 space-top\">
  4.                 ";
  5.         // line 59
  6.         $this->loadTemplate("component/products-list.html.twig""website/ad-search.html.twig"59)->display(twig_array_merge($context, ["list" => [=> "icon-1.png"=> "icon-2.png"=> "icon-3.png"=> "icon-4.png"=> "icon-5.png"=> "icon-6.png"=> "icon-7.png"=> "icon-8.png"=> "icon-9.png"]]));
  7.         // line 60
  8.         echo "            </div>
  9.         </div>
  10.     </div>
in vendor/twig/twig/src/Template.php -> block_content (line 171)
  1.             throw new \LogicException('A block must be a method on a \Twig\Template instance.');
  2.         }
  3.         if (null !== $template) {
  4.             try {
  5.                 $template->$block($context$blocks);
  6.             } catch (Error $e) {
  7.                 if (!$e->getSourceContext()) {
  8.                     $e->setSourceContext($template->getSourceContext());
  9.                 }
  1. </script>
  2. <div id=\"main-content\">
  3.     ";
  4.         // line 311
  5.         $this->displayBlock('content'$context$blocks);
  6.         // line 314
  7.         echo "</div>
  8. <script type=\"text/javascript\">
  9.   \$(document).ready(function () {
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
  1.         $macros $this->macros;
  2.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  3.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""website/ad-search.html.twig"));
  4.         $this->parent $this->loadTemplate("websiteBase.html.twig""website/ad-search.html.twig"1);
  5.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  6.         
  7.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  8.     }
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
in vendor/twig/twig/src/Template.php -> display (line 379)
  1.             ob_start();
  2.         } else {
  3.             ob_start(function () { return ''; });
  4.         }
  5.         try {
  6.             $this->display($context);
  7.         } catch (\Throwable $e) {
  8.             while (ob_get_level() > $level) {
  9.                 ob_end_clean();
  10.             }
  1.     public function render(array $context = []): string
  2.     {
  3.         // using func_get_args() allows to not expose the blocks argument
  4.         // as it should only be used by internal code
  5.         return $this->template->render($context\func_get_args()[1] ?? []);
  6.     }
  7.     public function display(array $context = [])
  8.     {
  9.         // using func_get_args() allows to not expose the blocks argument
  1.      * @throws SyntaxError  When an error occurred during compilation
  2.      * @throws RuntimeError When an error occurred during rendering
  3.      */
  4.     public function render($name, array $context = []): string
  5.     {
  6.         return $this->load($name)->render($context);
  7.     }
  8.     /**
  9.      * Displays a template.
  10.      *
  1.     {
  2.         if (!$this->container->has('twig')) {
  3.             throw new \LogicException('You cannot use the "renderView" method if the Twig Bundle is not available. Try running "composer require symfony/twig-bundle".');
  4.         }
  5.         return $this->container->get('twig')->render($view$parameters);
  6.     }
  7.     /**
  8.      * Renders a view.
  9.      */
  1.     /**
  2.      * Renders a view.
  3.      */
  4.     protected function render(string $view, array $parameters = [], Response $response null): Response
  5.     {
  6.         $content $this->renderView($view$parameters);
  7.         if (null === $response) {
  8.             $response = new Response();
  9.         }
AbstractController->render() in src/Controller/SearchController.php (line 348)
  1.             $sql .= ' AND product.id IN (' $productsID ') ';
  2.         }
  3.         $materials $conn->fetchAllAssociative($sql);
  4.         return $this->render('website/ad-search.html.twig', ['countOfResults'        => $countOfResults'curretPage'        => $page'categories'        => $categories'families'          => $families'brands'            => $brands'products'          => $products'materials'         => $materials'SupplierCompanys'  => $SupplierCompanys'searchTerms'       => $searchTerms'selectedCompanies' => $selectedCompanies'selectedBrands'    => $selectedBrands'selectedMaterial'  => $selectedMaterial'length'            => $length'lengthUnit'        => $lengthUnit'height'            => $height'heightUnit'        => $heightUnit'width'             => $width'widthUnit'         => $widthUnit'diameter'          => $diameter'diameterUnit'      => $diameterUnit'wieght'            => $wieght'wieghtUnit'        => $wieghtUnit'selectedCategory'  => $selectedCategory'selectedfamilies'  => $selectedfamilies'water'             => $water'thermal'           => $thermal'mounting'          => $mounting'colors'            => $colors'selectedcolors'    => $selectedcolors]);
  5.     }
  6. }
in vendor/symfony/http-kernel/HttpKernel.php -> searchByWord (line 153)
  1.         $this->dispatcher->dispatch($eventKernelEvents::CONTROLLER_ARGUMENTS);
  2.         $controller $event->getController();
  3.         $arguments $event->getArguments();
  4.         // call controller
  5.         $response $controller(...$arguments);
  6.         // view
  7.         if (!$response instanceof Response) {
  8.             $event = new ViewEvent($this$request$type$response);
  9.             $this->dispatcher->dispatch($eventKernelEvents::VIEW);
  1.     {
  2.         $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  3.         $this->requestStack->push($request);
  4.         try {
  5.             return $this->handleRaw($request$type);
  6.         } catch (\Exception $e) {
  7.             if ($e instanceof RequestExceptionInterface) {
  8.                 $e = new BadRequestHttpException($e->getMessage(), $e);
  9.             }
  10.             if (false === $catch) {
  1.         $this->boot();
  2.         ++$this->requestStackSize;
  3.         $this->resetServices true;
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
  1.         $this->request $request;
  2.     }
  3.     public function run(): int
  4.     {
  5.         $response $this->kernel->handle($this->request);
  6.         $response->send();
  7.         if ($this->kernel instanceof TerminableInterface) {
  8.             $this->kernel->terminate($this->request$response);
  9.         }
in vendor/autoload_runtime.php -> run (line 29)
  1. $app $app(...$args);
  2. exit(
  3.     $runtime
  4.         ->getRunner($app)
  5.         ->run()
  6. );
require_once('/var/www/html/website/vendor/autoload_runtime.php') in public/index.php (line 5)
  1. <?php
  2. use App\Kernel;
  3. require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
  4. return fn(array $context) => new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);

Logs

No log messages

Stack Trace

TypeError
TypeError:
App\Entity\Product::getNameAr(): Return value must be of type string, null returned

  at src/Entity/Product.php:1175
  at App\Entity\Product->getNameAr()
     (vendor/twig/twig/src/Extension/CoreExtension.php:1607)
  at twig_get_attribute()
     (var/cache/dev/twig/18/18c04afdec5b16ad046f6f309f921ede.php:59)
  at __TwigTemplate_9c620ff5ab761609683b25ac13349ecf->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (var/cache/dev/twig/d7/d76de7d37126d5f0738edd12deb6aff8.php:76)
  at __TwigTemplate_64b5e544d18c9817d96ec8d137053ca7->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (var/cache/dev/twig/89/89825ca2f4ca6cc2ed8b8f437fde246c.php:161)
  at __TwigTemplate_eac54407ba7d949cadbc251fff1562a6->block_content()
     (vendor/twig/twig/src/Template.php:171)
  at Twig\Template->displayBlock()
     (var/cache/dev/twig/2e/2e2216f5de7257b3f416d9edf5e9f372.php:484)
  at __TwigTemplate_12c51a56b9208cca46433ec0bc84fca5->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (var/cache/dev/twig/89/89825ca2f4ca6cc2ed8b8f437fde246c.php:47)
  at __TwigTemplate_eac54407ba7d949cadbc251fff1562a6->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (vendor/twig/twig/src/Template.php:379)
  at Twig\Template->render()
     (vendor/twig/twig/src/TemplateWrapper.php:40)
  at Twig\TemplateWrapper->render()
     (vendor/twig/twig/src/Environment.php:277)
  at Twig\Environment->render()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:222)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->renderView()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:230)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render()
     (src/Controller/SearchController.php:348)
  at App\Controller\SearchController->searchByWord()
     (vendor/symfony/http-kernel/HttpKernel.php:153)
  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()
     (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
  at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
     (vendor/autoload_runtime.php:29)
  at require_once('/var/www/html/website/vendor/autoload_runtime.php')
     (public/index.php:5)