РЕДАКТИРОВАТЬ
Наконец-то нашел мою ошибку.Я переопределял switchuser_listener из "Symfony \ Bundle \ SecurityBundle \ Resources \ config \ securityListeners.xml" своим собственным сервисом, и я предполагаю последние аргументы из их списка (10-й хе-хе ... хе ...), который не былтам, перед моими обновлениями, заставил меня добавить его в мой файл services.yml
security_listeners.xml
<service id="security.authentication.switchuser_listener" class="Symfony\Component\Security\Http\Firewall\SwitchUserListener" abstract="true">
<tag name="monolog.logger" channel="security" />
<argument type="service" id="security.token_storage" />
<argument /> <!-- User Provider -->
<argument /> <!-- User Checker -->
<argument /> <!-- Provider Key -->
<argument type="service" id="security.access.decision_manager" />
<argument type="service" id="logger" on-invalid="null" />
<argument>_switch_user</argument>
<argument>ROLE_ALLOWED_TO_SWITCH</argument>
<argument type="service" id="event_dispatcher" on-invalid="null"/>
<argument>false</argument> <!-- Stateless -->
</service>
Текст ниже по-прежнему действителен, онправильный ответ на вопрос.Но причина в этом редактировании.
КОНЕЦ РЕДАКТИРОВАНИЯ
Мне как-то удалось исправить эту странную проблему, установив autowire в false, и я также добавил дополнительныйпараметр, где «ложь» была (10th args).
Только так я смог «пропустить» проблему.Это немного грязно, чтобы делать это так.Но это работает.
Аргументы, отправленные зависимостью, были просто неверны.(По крайней мере, я так думаю)
Это обходной путь, я не буду отмечать его как ответивший, поэтому, если кто-то найдет фактический ответ, я отмечу его как правильный ответ
Вот изменения
services.yml Я просто добавил дополнительные пустые аргументы в 10-й позиции
services:
_defaults:
public: true
autowire: true
autoconfigure: true
security.authentication.switchuser_listener:
class: Dbm\UserBundle\Security\SwitchUserListener
autowire: false
arguments:
- '@security.token_storage'
- ~
- '@security.user_checker'
- ''
- '@security.access.decision_manager'
- '@logger'
- ''
- ''
- '@event_dispatcher'
- ''
- '@doctrine.orm.entity_manager'
- '@security.authorization_checker'
tags:
- { name: monolog.logger, channel: security }
SwitchUserListener.php Я простодобавлен дополнительный параметр на 10-й позиции
public function __construct(TokenStorageInterface $tokenStorage,
UserProviderInterface $provider,
UserCheckerInterface $userChecker,
$providerKey,
AccessDecisionManagerInterface $accessDecisionManager,
LoggerInterface $logger = null,
$usernameParameter = '_switch_user',
$role = 'ROLE_ALLOWED_TO_SWITCH',
EventDispatcherInterface $dispatcher = null,
$buggyParam, //Not doing anything with this
EntityManagerInterface $em,
AuthorizationChecker $authCheck)
{