__php_incomplete_class,Catchable Fatal Error: Object of class __PHP_Incomplete_Class could not be co...

I'm having an error when I want to open a simple page. This is the full error: ContextErrorException: Catchable Fatal Error: Object of class __PHP_Incomplete_Class could not be converted to string in /Applications/mampstack-5.4.20-0/apache2/htdocs/engelsvandenbroecke/vendor/symfony/symfony/src/Symfony/Component/Security/Core/Authentication/Token/AbstractToken.php line 70

What I've done in my symfony project is: Generate entities from database

Edit User Entity for security

Edit security.yml

Added two datafixtures

This is my User Entity Class: <?php namespace Beachteam\BeachteamBundle\Entity; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Security\Core\User\AdvancedUserInterface; /** * User * * @ORM\Table(name="user", uniqueConstraints={@ORM\UniqueConstraint(name="username_UNIQUE", columns={"username"})}, indexes={@ORM\Index(name="fk_users_roles_idx", columns={"role_id"})}) * @ORM\Entity */ class User implements AdvancedUserInterface { /** * @var string * * @ORM\Column(name="username", type="string", length=45, nullable=false) */ private $username; /** * @var string * * @ORM\Column(name="password", type="string", length=60, nullable=false) */ private $password; /** * @var string * * @ORM\Column(name="salt", type="string", length=30, nullable=false) */ private $salt; /** * @var string * * @ORM\Column(name="firstname", type="string", length=45, nullable=false) */ private $firstname; /** * @var string * * @ORM\Column(name="surname", type="string", length=45, nullable=false) */ private $surname; /** * @var string * * @ORM\Column(name="email", type="string", length=255, nullable=false) */ private $email; /** * @var string * * @ORM\Column(name="token", type="string", length=45, nullable=true) */ private $token; /** * @var \DateTime * * @ORM\Column(name="created", type="datetime", nullable=false) */ private $created; /** * @var integer * * @ORM\Column(name="id", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="IDENTITY") */ private $id; /** * @var \Beachteam\BeachteamBundle\Entity\Role * * @ORM\ManyToOne(targetEntity="Beachteam\BeachteamBundle\Entity\Role") * @ORM\JoinColumns({ * @ORM\JoinColumn(name="role_id", referencedColumnName="id") * }) */ private $role; private $plainPassword; /** * Constructor */ public function __construct() { $this->salt = base_convert(sha1(uniqid(mt_rand(), true)), 16, 36); } /** * Set username * * @param string $username * @return User */ public function setUsername($username) { $this->username = $username; return $this; } /** * Get username * * @return string */ public function getUsername() { return $this->username; } /** * Set password * * @param string $password * @return User */ public function setPassword($password) { $this->password = $password; return $this; } /** * Get password * * @return string */ public function getPassword() { return $this->password; } /** * Set salt * * @param string $salt * @return User */ public function setSalt($salt) { $this->salt = $salt; return $this; } /** * Get salt * * @return string */ public function getSalt() { return $this->salt; } /** * Set firstname * * @param string $firstname * @return User */ public function setFirstname($firstname) { $this->firstname = $firstname; return $this; } /** * Get firstname * * @return string */ public function getFirstname() { return $this->firstname; } /** * Set surname * * @param string $surname * @return User */ public function setSurname($surname) { $this->surname = $surname; return $this; } /** * Get surname * * @return string */ public function getSurname() { return $this->surname; } /** * Set email * * @param string $email * @return User */ public function setEmail($email) { $this->email = $email; return $this; } /** * Get email * * @return string */ public function getEmail() { return $this->email; } /** * Set token * * @param string $token * @return User */ public function setToken($token) { $this->token = $token; return $this; } /** * Get token * * @return string */ public function getToken() { return $this->token; } /** * Set created * * @param \DateTime $created * @return User */ public function setCreated($created) { $this->created = $created; return $this; } /** * Get created * * @return \DateTime */ public function getCreated() { return $this->created; } /** * Get id * * @return integer */ public function getId() { return $this->id; } /** * Set role * * @param \Beachteam\BeachteamBundle\Entity\Role $role * @return User */ public function setRoles(\Beachteam\BeachteamBundle\Entity\Role $role = null) { $this->role = $role; return $this; } /** * Get role * * @return \Beachteam\BeachteamBundle\Entity\Role */ public function getRoles() { return array($this->role->getName()); } public function eraseCredentials() { $this->setPlainPassword(null); } public function getPlainPassword() { return $this->plainPassword; } public function setPlainPassword($plainPassword) { $this->plainPassword = $plainPassword; } /** * Implementation of AdvancedUserInterface method * * @return boolean */ public function isAccountNonExpired() { return true; } /** * Implementation of AdvancedUserInterface method * * @return boolean */ public function isAccountNonLocked() { return true; } /** * Implementation of AdvancedUserInterface method * * @return boolean */ public function isCredentialsNonExpired() { return true; } /** * Implementation of AdvancedUserInterface method * * @return boolean */ public function isEnabled() { return true; } }

My security.yml: security: encoders: Beachteam\BeachteamBundle\Entity\User: algorithm: bcrypt cost: 15 role_hierarchy: ROLE_SUPER_ADMIN: ROLE_ADMIN providers: users: entity: class: BeachteamBundle:User property: username firewalls: dev: pattern: ^/(_(profiler|wdt)|css|images|js)/ security: false secured_area: pattern: ^/ anonymous: ~ form_login: login_path: beach_team_loginpage check_path: beach_team_logincheck username_parameter: login[username] password_parameter: login[password] always_use_default_target_path: true default_target_path: beach_team_adminpage logout: path: beach_team_logout target: beach_team_loginpage remember_me: key: "%secret%" lifetime: 31536000 # 365 days in seconds path: / domain: ~ # Defaults to the current domain from $_SERVER remember_me_parameter: remember access_control: #- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值