You are trying to store objects that are un-serializable into a session
(like an event manager or similars). Don't do that.

Marco Pivetta

http://twitter.com/Ocramius

http://ocramius.github.com/


On 19 February 2013 09:47, roberto blanko <robertobla...@gmail.com> wrote:

> Hello fellow devs,
>
> I use a custom authentication adapter to authenticate. The authenticate()
> method returns a Zend\Authentication\Result object with my cutsom user
> object in it. As long as the user object was created with `new User()` this
> worked pretty fine. The user is stored in the session, which is being
> stored in the DB.
>
> Now I changed my User class to implement ServiceManagerAwareInterface in
> order to be able to access the service manager within my model. In order
> for this to work, I cannot instantiate my user object with `new User()` but
> instead with $this->sm->get('My\Model\User'). I created the associated
> invokable first.
>
> Since I changed that, the user cannot be stored by the SessionManager
> anymore. I get an exception:
>
> 'Exception' with message 'Serialization of 'Closure' is not allowed' in
> /vendor/zendframework/zendframework/library/Zend/Stdlib/ArrayObject.php:323
> Stack trace:
> #0
> /vendor/zendframework/zendframework/library/Zend/Stdlib/ArrayObject.php(0):
> serialize()
> #1 [internal function]: Zend\Stdlib\ArrayObject-&gt;serialize()
> #2 /vendor/zendframework/zendframew in
>
> <b>/vendor/zendframework/zendframework/library/Zend/Session/SessionManager.php</b>
> on line <b>166</b><br />
>
> I use ZF 2.1
>
> Do you have any idea why this is and how to fix it? Any help would be
> highly appreciated.
>
> Regards
> Rob
>

Reply via email to