Problem/Motivation

Using Drupal 9.1.*

Error: Call to a member function getStorage() on null in Drupal\crypto_markets\Controller\CryptoMarketsController->content() (line 145 of /Users/netgeek/Sites/public/crypto/web/modules/custom/crypto_markets/src/Controller/CryptoMarketsController.php)
#0 [internal function]: Drupal\crypto_markets\Controller\CryptoMarketsController->content()
#1 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array(Array, Array)
#2 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/Render/Renderer.php(573): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#3 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure))
#4 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array)
#5 /Users/netgeek/Sites/public/crypto/vendor/symfony/http-kernel/HttpKernel.php(158): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#6 /Users/netgeek/Sites/public/crypto/vendor/symfony/http-kernel/HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1)
#7 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/Session.php(57): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#8 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#9 /Users/netgeek/Sites/public/crypto/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#10 /Users/netgeek/Sites/public/crypto/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#11 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#12 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#13 /Users/netgeek/Sites/public/crypto/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#14 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/DrupalKernel.php(706): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#15 /Users/netgeek/Sites/public/crypto/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#16 {main}
.

Steps to reproduce

visit currencies/binance-coin/markets

Comments

netgeek123 created an issue. See original summary.

netgeek123’s picture

Just poking around trying to find an answer to this one I found this in Drupal issues;
https://www.drupal.org/project/drupal/issues/3080793
$storage = \Drupal::entityTypeManager()->getStorage($entity->getEntityTypeId());

Is this the proper way to handle entityTypeManager?

netgeek123’s picture

I have added a pattern under PathAuto (URL Alias) and I am now getting two separate errors.
currencies/[node:title]/markets

The original remains the same.
Second new error happening at the same time;

Notice: Undefined variable: entityTypeManager in Drupal\crypto_markets\Controller\CryptoMarketsController->__construct() (line 83 of /Users/netgeek/Sites/public/crypto/web/modules/custom/crypto_markets/src/Controller/CryptoMarketsController.php)
#0 /Users/netgeek/Sites/public/crypto/web/core/includes/bootstrap.inc(305): _drupal_error_handler_real(8, 'Undefined varia...', '/Users/netgeek/...', 83)
#1 /Users/netgeek/Sites/public/crypto/web/modules/custom/crypto_markets/src/Controller/CryptoMarketsController.php(83): _drupal_error_handler(8, 'Undefined varia...', '/Users/netgeek/...', 83, Array)
#2 /Users/netgeek/Sites/public/crypto/web/modules/custom/crypto_markets/src/Controller/CryptoMarketsController.php(98): Drupal\crypto_markets\Controller\CryptoMarketsController->__construct(Object(Drupal\Core\Path\CurrentPathStack), Object(Drupal\path_alias\AliasManager), Object(Drupal\Core\Database\Driver\mysql\Connection), Object(Drupal\Core\Entity\EntityTypeManager), Object(Drupal\Core\Config\ConfigFactory), Object(GuzzleHttp\Client))
#3 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/DependencyInjection/ClassResolver.php(28): Drupal\crypto_markets\Controller\CryptoMarketsController::create(Object(Drupal\Core\DependencyInjection\Container))
#4 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/Controller/ControllerResolver.php(117): Drupal\Core\DependencyInjection\ClassResolver->getInstanceFromDefinition('\\Drupal\\crypto_...')
#5 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/Controller/ControllerResolver.php(69): Drupal\Core\Controller\ControllerResolver->createController('\\Drupal\\crypto_...')
#6 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/Controller/ControllerResolver.php(85): Drupal\Core\Controller\ControllerResolver->getControllerFromDefinition('\\Drupal\\crypto_...', '/currencies/qtu...')
#7 /Users/netgeek/Sites/public/crypto/vendor/symfony/http-kernel/HttpKernel.php(141): Drupal\Core\Controller\ControllerResolver->getController(Object(Symfony\Component\HttpFoundation\Request))
#8 /Users/netgeek/Sites/public/crypto/vendor/symfony/http-kernel/HttpKernel.php(80): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1)
#9 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/Session.php(57): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#10 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#11 /Users/netgeek/Sites/public/crypto/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#12 /Users/netgeek/Sites/public/crypto/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#13 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#14 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#15 /Users/netgeek/Sites/public/crypto/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#16 /Users/netgeek/Sites/public/crypto/web/core/lib/Drupal/Core/DrupalKernel.php(706): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#17 /Users/netgeek/Sites/public/crypto/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#18 {main}
.
netgeek123’s picture

Issue summary: View changes

babusaheb.vikas’s picture

Hi netgeek123,

I have fixed above error in 8.x-5.2 version of crypto_distribution.

Since, you are already updated your Drupal to 9.1 so you need to replace only "CryptoMarketsController.php" file of crypto_markets module. You can also track new changes from https://git.drupalcode.org/project/crypto_distribution/commit/0b5f3c8

netgeek123’s picture

Fixed and works as expected.

Thanks!

babusaheb.vikas’s picture

Status: Active » Fixed
babusaheb.vikas’s picture

Status: Fixed » Closed (fixed)