Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Mes Zend_test fonctionnent parfaitement jusqu'au moment au j'essaie d'introduire du cache, j'ai un plugins d'initialisation qui fait ceci :
public function routeStartup(Zend_Controller_Request_Abstract $request) { $this->_fc=Zend_Controller_Front::getInstance(); $this ->loadConfig() ->initCache() ->initDb() ->setControllerDirectory() ->setActionHelpers() ->setPlugins() ->setSession() ->setMappingSpace() ->setIdentity() ->setAcl() ->initView() ->setRoutes() ; }
Si je commente le initCache(à tout se déroule a merveille. Sinon j'ai l'erreur suivante :
1) testIndexAction(IndexControllerTest)
Zend_Controller_Exception: No default module defined for this application
/var/www/html/XXXX/xxxoooxxx.plop.com/wwwroot/library/Zend/Controller/Dispatcher/Standard.php:380
/var/www/html/XXXX/xxxoooxxx.plop.com/wwwroot/library/Zend/Controller/Dispatcher/Standard.php:203
/var/www/html/XXXX/xxxoooxxx.plop.com/wwwroot/library/Zend/Controller/Dispatcher/Standard.php:237
/var/www/html/XXXX/xxxoooxxx.plop.com/wwwroot/library/Zend/Controller/Front.php:934
/var/www/html/XXXX/xxxoooxxx.plop.com/wwwroot/library/Zend/Test/PHPUnit/ControllerTestCase.php:170
/var/www/html/XXXX/xxxoooxxx.plop.com/wwwroot/_tests/IndexControllerTest.php:13
Voici le code de initCache :
protected function initCache() { // D'abord, configurons le cache $frontendOptions = array( 'automatic_serialization' => true, 'lifetime' => 3600, ); $backendOptions = array( 'cache_dir' => APPLICATION_PATH.'/../_cache/' ); $cache = Zend_Cache::factory('Core', 'File', $frontendOptions, $backendOptions); Zend_Registry::set("cacheObject", $cache); return $this; }
C'est meme la ligne : $cache = Zend_Cache::factory('Core', 'File', $frontendOptions, $backendOptions); qui génére le probleme.
Merci d'avance
Séb
Dernière modification par Plopix (05-01-2009 10:39:13)
Hors ligne
Salut,
De base comme ça, je dirais que celà vient "à coup sur" du cache_dir.
Vérifie bien tes chemins. Le cache_dir pars du dossier public si je ne dis pas n'importe quoi.
Donc assure toi que tu lui indiques bien le bon nombre de noeuds à remonter dans ton arbo.
Par ex:
'cache_dir' => './tmp/'
Pointera vers le dossier tmp à la racine de ton documentRoot. (donc du dossier public)
Donc si tu veux remonter jusqu'à ton application, il faut remonter correctement toute l'arbo
Et donc si tu as :
application/
tmp/
public/
index.php
Tu dois faire :
'cache_dir' => '../application/tmp/'
Enfin, attention, il faut aussi que tu crées manuellement ton dossier _cache au préalable, zend ne le fera pas pour toi et te sors cette même erreur de module par défaut.
A+ benjamin.
Dernière modification par Delprog (16-12-2008 14:04:09)
Hors ligne
Pas mal pour mon deuxième post (un bon gros boulet sur ce coup), et bien vu c'était effectivement cache_dir mais tout simplement pour un problème de droit de base...
(Une histoire de VM en partage réseau dans notre environnement)
Merci de ta réponse
++
Hors ligne
Plopix a écrit:
Pas mal pour mon deuxième post (un bon gros boulet sur ce coup), et bien vu c'était effectivement cache_dir mais tout simplement pour un problème de droit de base...
(Une histoire de VM en partage réseau dans notre environnement)
Merci de ta réponse
++
Gauthier m'a dit de te dire que ta question était honteuse. En plus le nom de ta boite et de ton client apparaissent dans tes logs...
bravo !
nicolas.
mille excuses aux les lecteurs de ce forum pour ce message peu utile.
edit : plus sérieusement, c'est mieux de ne pas faire apparaitre le nom du client.
ps : Tu pourras passer le bonjour à Gauthier de ma part ?
Dernière modification par nick (18-12-2008 22:37:28)
Hors ligne