title: symfony2 FOSUserBundle login returns 'bad credentials'
body: <p>I'm new to FOSUserBundle and it's some hours that i'm struggling with this error...and can't find appropriate answer in the site.</p>
  
  <p>can anyone help me plz?:-*</p>
  
  <p>this is my child user entity</p>
  
  <pre><code>&lt;?php
  // src/Blogger/BlogBundle/Entity/CommonUser.php
  
  namespace Blogger\BlogBundle\Entity;
  
  use Doctrine\ORM\Mapping as ORM;
  use Doctrine\Common\Collections\ArrayCollection;
  use FOS\UserBundle\Model\User as BaseUser;
  
  
  /**
   * @ORM\Entity(repositoryClass="Blogger\BlogBundle\Entity\Repository\CommonUserRepository")
   * @ORM\Table(name="CommonUser")
   * @ORM\HasLifecycleCallbacks
   */
  class CommonUser extends BaseUser
  {
  
      /**
       * @ORM\OneToMany(targetEntity="Request", mappedBy="commonUser")
       */
      protected $requests;
  
  
  
      public function __construct()
      {
          parent::__construct();
  
          $this-&gt;requests = new ArrayCollection();
  
  
      }
  
  
  
      /**
       * @ORM\Id
       * @ORM\Column(type="integer", nullable=false)
       * @ORM\GeneratedValue(strategy="AUTO")
       */
      protected $id;
  
  
  ...
  ...
  ...
  
      /**
       * Get id
       *
       * @return integer
       */
      public function getId()
      {
          return $this-&gt;id;
      }
  
  
      public function getSalt()
      {
          return '';
      }
  ...
  
  }
  </code></pre>
  
  <p>and also this is the request.php class</p>
  
  <pre><code>&lt;?php
  // src/Blogger/BlogBundle/Entity/Request.php
  
  namespace Blogger\BlogBundle\Entity;
  
  use Doctrine\ORM\Mapping as ORM;
  use Doctrine\Common\Collections\ArrayCollection;
  use Blogger\BlogBundle\Entity\Repository\RequestRepository;
  /**
   * @ORM\Entity(repositoryClass="Blogger\BlogBundle\Entity\Repository\requestRepository")
   * @ORM\Table(name="request")
   * @ORM\HasLifecycleCallbacks
   */
  class Request
  {
  
      /**
       * @ORM\OneToMany(targetEntity="Note", mappedBy="request")
       */
      protected $notes;
  
      public function __construct()
      {
          $this-&gt;notes = new ArrayCollection();
  
  
          $this-&gt;setCreated(new \DateTime());
          $this-&gt;setUpdated(new \DateTime());
      }
  
      /**
       * @ORM\Id
       * @ORM\Column(type="integer")
       * @ORM\GeneratedValue(strategy="AUTO")
       */
      protected $id;
  
      /**
       * @ORM\ManyToOne(targetEntity="CommonUser", inversedBy="requests")
       * @ORM\JoinColumn(name="user_id", referencedColumnName="id")
       */
      protected $commonUser;
  
      /**
       * @ORM\Column(type="text")
       */
      protected $request;
  
      ....
      ....
      ....
  
  
  
      /**
       * Get id
       *
       * @return integer
       */
      public function getId()
      {
          return $this-&gt;id;
      }
  
      ....
      ....
      ....
  }
  </code></pre>
  
  <p>and this is my security file</p>
  
  <pre><code># app/config/security.yml
  security:
      encoders:
          FOS\UserBundle\Model\UserInterface: sha512
  
      role_hierarchy:
          ROLE_ADMIN:       ROLE_USER
          ROLE_SUPER_ADMIN: ROLE_ADMIN
  
      providers:
          fos_userbundle:
              id: fos_user.user_provider.username
  
      firewalls:
          main:
              pattern: ^/
              form_login:
                  provider: fos_userbundle
                  csrf_provider: form.csrf_provider
              logout:       true
              anonymous:    true
  
      access_control:
          - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
          - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
          - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
          - { path: ^/admin/, role: ROLE_ADMIN }
  </code></pre>