JWTRefreshTokenBundle icon indicating copy to clipboard operation
JWTRefreshTokenBundle copied to clipboard

Error User provider NULL

Open AdrienHarvel opened this issue 4 years ago • 0 comments

In PHP7.4, I got this error when trying to get my token with refresh token:

Argument 1 passed to Gesdinet\JWTRefreshTokenBundle\Security\Provider\RefreshTokenProvider::setCustomUserProvider() must implement interface Symfony\Component\Security\Core\User\UserProviderInterface, null given, called in /var/www/var/cache/test/ContainerAXbJNLy/getGesdinet_Jwtrefreshtoken_UserProviderService.php on line 25

in var/cache/test/ContainerAXbJNLy/getGesdinet_Jwtrefreshtoken_UserProviderService.php -> setCustomUserProvider (line 25) include_once \dirname(__DIR__, 4).'/vendor/symfony/security-core/User/UserProviderInterface.php'; include_once \dirname(__DIR__, 4).'/vendor/gesdinet/jwt-refresh-token-bundle/Security/Provider/RefreshTokenProvider.php'; $container->privates['gesdinet.jwtrefreshtoken.user_provider'] = $instance = new \Gesdinet\JWTRefreshTokenBundle\Security\Provider\RefreshTokenProvider(($container->services['gesdinet.jwtrefreshtoken.refresh_token_manager'] ?? $container->load('getGesdinet_Jwtrefreshtoken_RefreshTokenManagerService'))); $instance->setCustomUserProvider(NULL); return $instance;

My solution is to add ? to UserProviderInterface type if it is null and It work fine!

class : Gesdinet\JWTRefreshTokenBundle\Security\Provider\RefreshTokenProvider

public function setCustomUserProvider(?UserProviderInterface $customUserProvider) { $this->customUserProvider = $customUserProvider; } Thanks.

AdrienHarvel avatar Nov 20 '20 20:11 AdrienHarvel