I suddenly started getting this error, after doing some Entity changes unrelated to this action
Notice: serialize(): "questionPools" returned as member variable from __sleep() but does not exist
Action looks like this:
/** * @param UserProvider $userProvider * @param Exam $exam * @param ExamService $examService * @Route("/start/{id}", name="/start") */ public function startAction(UserProvider $userProvider, Exam $exam, ExamService $examService) { try { $userExam = $examService->startExam($exam); $userExam->setUser($userProvider->getUser()); $this->db()->persist($userExam); $this->db()->flush(); } catch (RuntimeException $exception) { $this->addFlash('danger', $exception->getMessage()); return $this->redirectToRoute('userExam/available'); } catch (Exception $exception) { $this->addFlash('danger', $exception->getMessage()); return $this->redirectToRoute('userExam/available'); } return $this->redirectToRoute('userExam/fill', ['hash' => $userExam->getHash()]); } Stack trace leads to vendor, as the error happens during the redirect.
"questionPools" is property of an Exam Entity:
/** * Class Exam * @package App\Entity * @ORM\Entity(repositoryClass="App\Repository\ExamRepository") * @ORM\Table(name="exam",indexes={@ORM\Index(name="search_idx", columns={"start", "stop"})}) */ class Exam extends AbstractEntity { // Time in minutes const DEFAULT_TIME = 30; const DEFAULT_THRESHOLD = 80; /** * @var Collection|QuestionPool[] * @ORM\OneToMany(targetEntity="App\Entity\QuestionPool", * mappedBy="exam", * cascade={"persist", "remove"}, * orphanRemoval=true, * ) */ protected Collection $questionPools; startExam(Exam $exam) method of ExamService class does not change this collection, only creates an UserExam object based on it. It should pass this object, I don't understand why it throws some serialization error.
I thought it has something to do with caching, but I even manually deleted the /var/cache/dev directory to be sure it's not that.
For full clarity here's the stack trace:
ErrorException: Notice: serialize(): "questionPools" returned as member variable from __sleep() but does not exist at W:\wamp64\www\exams\vendor\symfony\security-http\Firewall\ContextListener.php:178 at Symfony\Component\Security\Http\Firewall\ContextListener->onKernelResponse(object(ResponseEvent), 'kernel.response', object(TraceableEventDispatcher)) (W:\wamp64\www\exams\vendor\symfony\event-dispatcher\Debug\WrappedListener.php:117) at Symfony\Component\EventDispatcher\Debug\WrappedListener->__invoke(object(ResponseEvent), 'kernel.response', object(TraceableEventDispatcher)) (W:\wamp64\www\exams\vendor\symfony\event-dispatcher\EventDispatcher.php:230) at Symfony\Component\EventDispatcher\EventDispatcher->callListeners(array(object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener)), 'kernel.response', object(ResponseEvent)) (W:\wamp64\www\exams\vendor\symfony\event-dispatcher\EventDispatcher.php:59) at Symfony\Component\EventDispatcher\EventDispatcher->dispatch(object(ResponseEvent), 'kernel.response') (W:\wamp64\www\exams\vendor\symfony\event-dispatcher\Debug\TraceableEventDispatcher.php:151) at Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher->dispatch(object(ResponseEvent), 'kernel.response') (W:\wamp64\www\exams\vendor\symfony\http-kernel\HttpKernel.php:190) at Symfony\Component\HttpKernel\HttpKernel->filterResponse(object(RedirectResponse), object(Request), 1) (W:\wamp64\www\exams\vendor\symfony\http-kernel\HttpKernel.php:178) at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1) (W:\wamp64\www\exams\vendor\symfony\http-kernel\HttpKernel.php:79) at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true) (W:\wamp64\www\exams\vendor\symfony\http-kernel\Kernel.php:195) at Symfony\Component\HttpKernel\Kernel->handle(object(Request)) (W:\wamp64\www\exams\public\index.php:20) Please advise, I'm really lost here. Thank you.
https://stackoverflow.com/questions/66557783/symfony-serialize-returned-as-member-variable-from-sleep-but-does-not-exis March 10, 2021 at 11:07AM
没有评论:
发表评论