symfony 2 - one to one mapping
I am getting the following error, when I want to add new UserProfile using autogenerated form.The error is:
    **Expected an object, but got a collection. Did you forget to pass "multiple=true" to an entity field?** 

I am using **Symfony 2.0.12**

This is my code for the UserProfile entity. The issue occurred in Controller, but I am not sure how to solve it. Please help.

        
    <?php

    namespace Infidia\OutsourceBundle\Entity;

    use Doctrine\ORM\Mapping as ORM;
    use Doctrine\Common\Collections\ArrayCollection;

    /**
     * Infidia\OutsourceBundle\Entity\UserProfile
     *
     * @ORM\Table()
     * @ORM\Entity(repositoryClass="Infidia\OutsourceBundle\Entity\UserProfileRepository")
     */
    class UserProfile
    {
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     *
     * @ORM\OneToOne(targetEntity="User")
     * @orm:JoinColumn(name="userid", referencedColumnName="id")
     */
    private $user;

    /**
     * @var  integer $userid
     */
    private $userid;

    /**
     * @var text $street_address
     *
     * @ORM\Column(name="street_address", type="text")
     */
    private $street_address;

    /**
     * @var string $city
     *
     * @ORM\Column(name="city", type="string", length=255)
     */
    private $city;

    /**
     * @var string $country
     *
     * @ORM\Column(name="country", type="string", length=255)
     */
    private $country;

    /**
     * @var string $zipcode
     *
     * @ORM\Column(name="zipcode", type="string", length=255)
     */
    private $zipcode;

    /**
     * @var string $timezone
     *
     * @ORM\Column(name="timezone", type="string", length=12)
     */
    private $timezone;

    /**
     * @var string $contact_no
     *
     * @ORM\Column(name="contact_no", type="string", length=20)
     */
    private $contact_no;

    /**
     * @var date $birthday
     *
     * @ORM\Column(name="birthday", type="date")
     */
    private $birthday;

    /**
     * @var string $gender
     *
     * @ORM\Column(name="gender", type="string", length=15)
     */
    private $gender;


    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }


    /**
     * Set street_address
     *
     * @param text $streetAddress
     */
    public function setStreetAddress($streetAddress)
    {
        $this->street_address = $streetAddress;
    }

    /**
     * Get street_address
     *
     * @return text 
     */
    public function getStreetAddress()
    {
        return $this->street_address;
    }

    /**
     * Set city
     *
     * @param string $city
     */
    public function setCity($city)
    {
        $this->city = $city;
    }

    /**
     * Get city
     *
     * @return string 
     */
    public function getCity()
    {
        return $this->city;
    }

    /**
     * Set country
     *
     * @param string $country
     */
    public function setCountry($country)
    {
        $this->country = $country;
    }

    /**
     * Get country
     *
     * @return string 
     */
    public function getCountry()
    {
        return $this->country;
    }

    /**
     * Set zipcode
     *
     * @param string $zipcode
     */
    public function setZipcode($zipcode)
    {
        $this->zipcode = $zipcode;
    }

    /**
     * Get zipcode
     *
     * @return string 
     */
    public function getZipcode()
    {
        return $this->zipcode;
    }

    /**
     * Set timezone
     *
     * @param string $timezone
     */
    public function setTimezone($timezone)
    {
        $this->timezone = $timezone;
    }

    /**
     * Get timezone
     *
     * @return string 
     */
    public function getTimezone()
    {
        return $this->timezone;
    }

    /**
     * Set contact_no
     *
     * @param string $contactNo
     */
    public function setContactNo($contactNo)
    {
        $this->contact_no = $contactNo;
    }

    /**
     * Get contact_no
     *
     * @return string 
     */
    public function getContactNo()
    {
        return $this->contact_no;
    }

    /**
     * Set birthday
     *
     * @param date $birthday
     */
    public function setBirthday($birthday)
    {
        $this->birthday = $birthday;
    }

    /**
     * Get birthday
     *
     * @return date 
     */
    public function getBirthday()
    {
        return $this->birthday;
    }

    /**
     * Set gender
     *
     * @param string $gender
     */
    public function setGender($gender)
    {
        $this->gender = $gender;
    }

    /**
     * Get gender
     *
     * @return string 
     */
    public function getGender()
    {
        return $this->gender;
    }

    /**
     * Set experience
     *
     * @param \Infidia\OutsourceBundle\Entity\text $experience
     */
    public function setExperience($experience)
    {
        $this->experience = $experience;
    }

    /**
     * Get Experience
     *
     * @return \Infidia\OutsourceBundle\Entity\text
     */
    public function getExperience()
    {
        return $this->experience;
    }

    /**
     * Set UserId
     *
     * @param int $userid
     */
    public function setUserid($userid)
    {
        $this->userid = $userid;
    }

    /**
     * Get UserId
     * @return int
     */
    public function getUserid()
    {
        return $this->userid;
    }

    public function __construct()
    {
        $this->user = new ArrayCollection();
    }

    /**
     * Set user
     *
     * @param Infidia\OutsourceBundle\Entity\User $user
     */
    public function setUser(\Infidia\OutsourceBundle\Entity\User $user)
    {
        $this->user = $user;
    }

    /**
     * Get user
     *
     * @return Infidia\OutsourceBundle\Entity\User 
     */
    public function getUser()
    {
        return $this->user;
    }
    }
symfony 2 - one to one mapping
===

I am getting the following error, when I want to add new UserProfile using autogenerated form.The error is:
    **Expected an object, but got a collection. Did you forget to pass "multiple=true" to an entity field?** 

I am using **Symfony 2.0.12**

This is my code for the UserProfile entity. The issue occurred in Controller, but I am not sure how to solve it. Please help.

        
    <?php

    namespace Infidia\OutsourceBundle\Entity;

    use Doctrine\ORM\Mapping as ORM;
    use Doctrine\Common\Collections\ArrayCollection;

    /**
     * Infidia\OutsourceBundle\Entity\UserProfile
     *
     * @ORM\Table()
     * @ORM\Entity(repositoryClass="Infidia\OutsourceBundle\Entity\UserProfileRepository")
     */
    class UserProfile
    {
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     *
     * @ORM\OneToOne(targetEntity="User")
     * @orm:JoinColumn(name="userid", referencedColumnName="id")
     */
    private $user;

    /**
     * @var  integer $userid
     */
    private $userid;

    /**
     * @var text $street_address
     *
     * @ORM\Column(name="street_address", type="text")
     */
    private $street_address;

    /**
     * @var string $city
     *
     * @ORM\Column(name="city", type="string", length=255)
     */
    private $city;

    /**
     * @var string $country
     *
     * @ORM\Column(name="country", type="string", length=255)
     */
    private $country;

    /**
     * @var string $zipcode
     *
     * @ORM\Column(name="zipcode", type="string", length=255)
     */
    private $zipcode;

    /**
     * @var string $timezone
     *
     * @ORM\Column(name="timezone", type="string", length=12)
     */
    private $timezone;

    /**
     * @var string $contact_no
     *
     * @ORM\Column(name="contact_no", type="string", length=20)
     */
    private $contact_no;

    /**
     * @var date $birthday
     *
     * @ORM\Column(name="birthday", type="date")
     */
    private $birthday;

    /**
     * @var string $gender
     *
     * @ORM\Column(name="gender", type="string", length=15)
     */
    private $gender;


    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }


    /**
     * Set street_address
     *
     * @param text $streetAddress
     */
    public function setStreetAddress($streetAddress)
    {
        $this->street_address = $streetAddress;
    }

    /**
     * Get street_address
     *
     * @return text 
     */
    public function getStreetAddress()
    {
        return $this->street_address;
    }

    /**
     * Set city
     *
     * @param string $city
     */
    public function setCity($city)
    {
        $this->city = $city;
    }

    /**
     * Get city
     *
     * @return string 
     */
    public function getCity()
    {
        return $this->city;
    }

    /**
     * Set country
     *
     * @param string $country
     */
    public function setCountry($country)
    {
        $this->country = $country;
    }

    /**
     * Get country
     *
     * @return string 
     */
    public function getCountry()
    {
        return $this->country;
    }

    /**
     * Set zipcode
     *
     * @param string $zipcode
     */
    public function setZipcode($zipcode)
    {
        $this->zipcode = $zipcode;
    }

    /**
     * Get zipcode
     *
     * @return string 
     */
    public function getZipcode()
    {
        return $this->zipcode;
    }

    /**
     * Set timezone
     *
     * @param string $timezone
     */
    public function setTimezone($timezone)
    {
        $this->timezone = $timezone;
    }

    /**
     * Get timezone
     *
     * @return string 
     */
    public function getTimezone()
    {
        return $this->timezone;
    }

    /**
     * Set contact_no
     *
     * @param string $contactNo
     */
    public function setContactNo($contactNo)
    {
        $this->contact_no = $contactNo;
    }

    /**
     * Get contact_no
     *
     * @return string 
     */
    public function getContactNo()
    {
        return $this->contact_no;
    }

    /**
     * Set birthday
     *
     * @param date $birthday
     */
    public function setBirthday($birthday)
    {
        $this->birthday = $birthday;
    }

    /**
     * Get birthday
     *
     * @return date 
     */
    public function getBirthday()
    {
        return $this->birthday;
    }

    /**
     * Set gender
     *
     * @param string $gender
     */
    public function setGender($gender)
    {
        $this->gender = $gender;
    }

    /**
     * Get gender
     *
     * @return string 
     */
    public function getGender()
    {
        return $this->gender;
    }

    /**
     * Set experience
     *
     * @param \Infidia\OutsourceBundle\Entity\text $experience
     */
    public function setExperience($experience)
    {
        $this->experience = $experience;
    }

    /**
     * Get Experience
     *
     * @return \Infidia\OutsourceBundle\Entity\text
     */
    public function getExperience()
    {
        return $this->experience;
    }

    /**
     * Set UserId
     *
     * @param int $userid
     */
    public function setUserid($userid)
    {
        $this->userid = $userid;
    }

    /**
     * Get UserId
     * @return int
     */
    public function getUserid()
    {
        return $this->userid;
    }

    public function __construct()
    {
        $this->user = new ArrayCollection();
    }

    /**
     * Set user
     *
     * @param Infidia\OutsourceBundle\Entity\User $user
     */
    public function setUser(\Infidia\OutsourceBundle\Entity\User $user)
    {
        $this->user = $user;
    }

    /**
     * Get user
     *
     * @return Infidia\OutsourceBundle\Entity\User 
     */
    public function getUser()
    {
        return $this->user;
    }
    }