Bonjour,
Je suis en train de créer une application modulaire, jusque là tout va bien ou presque.
Je crée une ouverture de session via login/password
J'ai une page 'mon compte' qui affiche mes infos
lorsque je vais sur cette page en session et que je change de page, j'ai une exception Zend_Session :
Fatal error: Uncaught exception 'Zend_Session_Exception' with message 'Zend_Session::start() - /var/www/lib/Zend_1.9.3PL1/Loader.php(Line:83): Error #2 Zend_Loader::include() [<a href='function.include'>function.include</a>]: Failed opening 'Ez/View/Helper/InfoMessage.php' for inclusion (include_path='/var/www/Mailletv2.1/application/../library:/var/www/Mailletv2.1/library:.:/usr/share/php:/usr/share/pear') Array' in /var/www/lib/Zend_1.9.3PL1/Session.php:493 Stack trace: #0 /var/www/lib/Zend_1.9.3PL1/Session/Namespace.php(143): Zend_Session::start(true) #1 /var/www/Mailletv2.1/application/Bootstrap.php(33): Zend_Session_Namespace->__construct('mailletv21') #2 /var/www/lib/Zend_1.9.3PL1/Application/Bootstrap/BootstrapAbstract.php(662): Bootstrap->_initSession() #3 /var/www/lib/Zend_1.9.3PL1/Application/Bootstrap/BootstrapAbstract.php(615): Zend_Application_Bootstrap_BootstrapAbstract->_executeResource('session') #4 /var/www/lib/Zend_1.9.3PL1/Application/Bootstrap/BootstrapAbstract.php(579): Zend_Application_Bootstrap_Boot in /var/www/lib/Zend_1.9.3PL1/Session.php on line 493
Je ne comprend vraiment pas ce qui se passe à ce moment précis.
J'ai une Exception Zend_Session m'indiquant une erreur de Loader!
dans mon bootstrap, j'initialise la session de cette façon:
La configuration est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 protected function _initSession() { $configSession = new Ez_Config_Ini(APPLICATION_PATH . '/configs/session.ini', APPLICATION_ENV); Zend_Session::setOptions($configSession->toArray()); // Path to files session Zend_Session::setOptions(array('save_path' => $configSession->save_path)); Zend_Registry::set('session', $session = new Zend_Session_Namespace($configSession->name)); return $session; }
use_cookies = on
use_only_cookies = on
use_trans_sid = off
strict = off
remember_me_seconds = 28800
cookie_lifetime = 28800
name = mailletv21
gc_divisor = 10
gc_maxlifetime = 86400
gc_probability = 1
save_path = /tmp
Je suis bloqué, à chaque fois que je navigue j'ai cette erreur redondante.
Je ne sais pas si c'est lié, mais j'ai également un problème de stockage d'identité avec Zend_Auth. En effet, je stocke l'objet User_Row après authentification.
Lorsque je fait Zend_Auth::getInstance()->getIdentity() j'obtient une classe PHP incomplète.
Pour résoudre le problème, j'ai dû sérialiser l'objet avant écriture :
Zend_Auth::getInstance()->getStorage()->write(serialize($this));
et je dois le déserialiser à chaque appel :
unserialize(Zend_Auth::getInstance()->getIdentity());
Partager