2016-11-15 280 views
0

當我嘗試啓動我的定製使用PHP斌/控制檯 我得到這個奇怪的錯誤做出的Symfony命令:Symfony的控制檯命令:令牌存儲不包含身份驗證令牌

[Symfony的\分量\安全\核心\ Exception \ AuthenticationCredentialsNotFoundException]

令牌存儲不包含身份驗證令牌。一個可能的 原因可能是沒有防火牆配置此URL

它似乎是負責該行

$user = $em->getRepository('CoreUserBundle:User')->findOneById($deck['user_id']); 
      if ($user != null) 
      { 
       $deck_entity = new Deck(); 
       $deck_entity->SetId($deck['id']); 
       $deck_entity->SetUser($user); 
       $deck_entity->SetTitle($deck['titre']); 
       $deck_entity->SetClass($deck['classe']); 
       $deck_entity->SetStyle("None"); 
       $deck_entity->SetContentHtml($deck['contenu_html']); 
       if (isset($deck['contenu_bbcode'])) 
        $deck_entity->SetContentBBCode($deck['contenu_bbcode']); 
       $deck_entity->SetVideo($deck['video']); 
       $deck_entity->SetVersion($deck['version']); 
       $deck_entity->SetIsUpdated($deck['a_jour']); 
       $deck_entity->SetCraftCost($deck['craft_cout']); 
       $deck_entity->SetCreationDate(new \DateTime($deck['creation'])); 
       $deck_entity->SetEditionDate(new \DateTime($deck['edition'])); 
       $deck_entity->SetDeckType($deck['deck_type']); 


       $em->persist($deck_entity); 

       $metadata = $em->getClassMetaData(get_class($deck_entity)); 
       $metadata->setIdGeneratorType(\Doctrine\ORM\Mapping\ClassMetadata::GENERATOR_TYPE_NONE); 
      } 

UPDATE:它似乎是錯誤的持續存在的時刻發生實體Deck()。

我的防火牆安全是

firewalls: 
    dev: 
     pattern: ^/(_(profiler|wdt)|css|images|js)/ 
     security: false 

    main: 
     pattern: ^/ 
     form_login: 
      login_path: /login 
      provider: fos_userbundle 
      csrf_token_generator: security.csrf.token_manager 
      remember_me: true 
     oauth: 
      resource_owners: 
       facebook: /login/check-facebook 
       google: /login/check-google 
      login_path: /login 
      failure_path: /login 
      oauth_user_provider: 
       service: core.user.user_provider 
     remember_me: 
      secret: "%secret%" 
      name:  f1e56d001 
      lifetime: 604800 
      httponly: true 
      domain: xxxx.eu 
     logout: 
      path: fos_user_security_logout 
      handlers: ['sonata.page.cms_manager_selector'] 
      target:/
     anonymous: true 
     switch_user: 
      role:  ROLE_ADMINISTRATOR 
      parameter: connect_as 

我不明白我應該,錯誤似乎在告訴我,我不是驗證,但如何因爲我使用的控制檯?

在此先感謝。

+2

你能發佈'CoreUserBundle:User'的存儲庫類是什麼樣的嗎?另外,如果可能的話,或許是一個更大的堆棧跟蹤錯誤! –

+0

請提供您的命令更多的代碼。我不認爲這是由用戶存儲庫引起的。 –

+0

命令行不給我一個最大的堆棧跟蹤,這是它輸出的唯一行,我不知道如何讓他提供更多的信息。我用更多的代碼更新了這個問題 – scimunk

回答

0

經過更多的研究後,它的出現我的Deck()實體觸發了一個PostPersist事件,用於從FosCommentBundle創建一個新線程,顯然需要讓當前登錄的用戶處理一些東西的命令是一個控制檯命令),我可以通過繞過這些事件來解決問題。