Error 500 Internal Server Error

GET https://test.gestionbomberos.org/usuario/cambiar_password/779

Forwarded to ErrorController (894e72)

Exceptions

Call to a member function getUser() on null

Exception

Error

  1.     }
  2.     public function getRoles(): array
  3.     {
  4.         /** @var Usuario $usuario */
  5.         $usuario = $this->tokenStorage->getToken()->getUser();
  6.         $roles = [static::ROLE_DEFAULT];
  7.         foreach ($usuario->getGrupos() as $grupo) {
  8.             if(null !== $grupo->getTipoUsuario() && $grupo->getTipoUsuario()->getId() === $this->getTipo()){
  9.                 $roles = array_merge($roles, $grupo->getArrayNombreDeRoles());
UsuarioHelper->getRoles() in src/Helper/UsuarioHelper.php (line 163)
  1.         if (!is_array($roles)) {
  2.             $roles = explode(',', $roles);
  3.         }
  4.         $userRoles = $this->getRoles();
  5.         foreach ($roles as $role) {
  6.             if (in_array(strtoupper($role), $userRoles, true)) {
  7.                 return true;
  8.             }
  9.         }
UsuarioHelper->hasRole(array('ROLE_USER_SUPER_ADMIN')) in src/Helper/UsuarioHelper.php (line 175)
  1.         return false;
  2.     }
  3.     public function hasAtLeastOneRole($roles): bool
  4.     {
  5.         if ($this->hasRole(['ROLE_USER_SUPER_ADMIN'])) {
  6.             return true;
  7.         }
  8.         return $this->hasRole($roles);
  9.     }
UsuarioHelper->hasAtLeastOneRole(array('ROLE_USER_SUPER_ADMIN', 'ROLE_USER_ADMINISTRATIVO', 'ROLE_USUARIO_RESETEAR_CLAVE')) in src/Controller/Usuario/CambiarPasswordController.php (line 34)
  1.             throw $this->createNotFoundException('No se ha encontrado el usuario solicitado');
  2.         }
  3.         $currentUser = $this->getUser();
  4.         if ($currentUser !== $usuario && !$usuarioHelper->hasAtLeastOneRole(['ROLE_USER_SUPER_ADMIN', 'ROLE_USER_ADMINISTRATIVO','ROLE_USUARIO_RESETEAR_CLAVE'])) {
  5.             throw $this->createNotFoundException('No tiene permisos para realizar esta acción');
  6.         }
  7.         $form = $this->createForm(CambiarPasswordType::class, $usuario, ['externo' => $usuarioHelper->esExterno($usuario)]);
  1.         $this->dispatcher->dispatch($event, KernelEvents::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, $event);
  9.             $this->dispatcher->dispatch($event, KernelEvents::VIEW);
  1.         $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2.         $this->requestStack->push($request);
  3.         $response = null;
  4.         try {
  5.             return $response = $this->handleRaw($request, $type);
  6.         } catch (\Throwable $e) {
  7.             if ($e instanceof \Error && !$this->handleAllThrowables) {
  8.                 throw $e;
  9.             }
  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.     ) {
  2.     }
  3.     public function run(): int
  4.     {
  5.         $response = $this->kernel->handle($this->request);
  6.         if (Kernel::VERSION_ID >= 60400) {
  7.             $response->send(false);
  8.             if (\function_exists('fastcgi_finish_request') && !$this->debug) {
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/ruba/vendor/autoload_runtime.php') in public/index.php (line 7)
  1. use App\Kernel;
  2. umask(0000);
  3. require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
  4. return function (array $context) {
  5.     return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
  6. };

Logs

Level Channel Message
INFO 22:55:33 request Matched route "_profiler".
{
    "route": "_profiler",
    "route_parameters": {
        "_route": "_profiler",
        "_controller": "web_profiler.controller.profiler::panelAction",
        "token": "f4d353"
    },
    "request_uri": "https://test.gestionbomberos.org/_profiler/f4d353?panel=exception&type=request",
    "method": "GET"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bridge\\Doctrine\\Middleware\\IdleConnection\\Listener::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.request" to listener "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Knp\\Bundle\\PaginatorBundle\\Subscriber\\SlidingPaginationSubscriber::onKernelRequest"
}
DEBUG 22:55:33 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 22:55:33 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
DEBUG 22:55:33 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
}
DEBUG 22:55:33 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 22:55:33 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 22:55:33 event Notified event "kernel.controller_arguments" to listener "ContainerEHQfZCx\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "ContainerEHQfZCx\\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments"
}
DEBUG 22:55:33 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}

Stack Trace

Error
Error:
Call to a member function getUser() on null

  at src/Helper/UsuarioHelper.php:140
  at App\Helper\UsuarioHelper->getRoles()
     (src/Helper/UsuarioHelper.php:163)
  at App\Helper\UsuarioHelper->hasRole(array('ROLE_USER_SUPER_ADMIN'))
     (src/Helper/UsuarioHelper.php:175)
  at App\Helper\UsuarioHelper->hasAtLeastOneRole(array('ROLE_USER_SUPER_ADMIN', 'ROLE_USER_ADMINISTRATIVO', 'ROLE_USUARIO_RESETEAR_CLAVE'))
     (src/Controller/Usuario/CambiarPasswordController.php:34)
  at App\Controller\Usuario\CambiarPasswordController->__invoke(object(Request), object(UserPasswordHasher), object(EntityManagerGhost614a58f), object(Usuario), object(UsuarioHelper), object(MailServiceHelper), object(Router), 'ruba-test@bomberosra.org.ar', '\'Bomberos RA-Stage\'')
     (vendor/symfony/http-kernel/HttpKernel.php:183)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
     (vendor/symfony/http-kernel/Kernel.php:182)
  at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
     (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/ruba/vendor/autoload_runtime.php')
     (public/index.php:7)