Bonjour,

J'ai un problème lors de la désinscription d'un utilisateur.
Voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
public function desinscriptionAction()
	{
		$user = $this->get('security.context')->getToken()->getUser();
 
		$request = $this->get('request');
 
		try {
			$userManager->unsubscribe($user);
		} catch (\Doctrine\DBAL\DBALException $e) {
			return $this->render('XXXX:Compte:compte.html.twig', array('user' => $user, 'form'=>$form->createView(),'error' => $e->getMessage())); 
		}		
		return $this->redirect($this->generateUrl('pathAccueilLogin'));
	}
Le code de mon service :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
        public function unsubscribe($user, $sendMailToRelation = true) 
	{
 
 
 
		$em->remove($user);
		$em->flush();
 
	}
La désinscription ou plutôt la suppression de l'entité user fonctionne mais c'est quand je fais la redirection que ca ne fonctionne pas.
Il me retourne l'erreur suivante :
You cannot refresh a user from the EntityUserProvider that does not contain an identifier. The user object has to be serialized with its own identifier mapped by Doctrine.
Puis après je fais rafraichir la page et ca me redirige bien vers la page d'accueil et je suis bien délogué.

Quelqu'un a une idée?
Je pense que ca vient de la session. Mais j'ai essayé de supprimer la session en cours via $session->invalidate() mais le problème est toujours présent.


Merci d'avance.