Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > MVC
MVC Forum de support sur le développement d'applications de type modèle-vue-contrôleur avec Zend Framework ainsi que vos questions sur les plugins, les helpers etc. Avant de poster -> Cours MVC, FAQ ZF Controller
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/06/2011, 09h49   #1
Expert Confirmé Sénior
 
Avatar de le_chomeur
 
Développeur informatique
Inscription : février 2006
Messages : 3 563
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 3 563
Points : 4 025
Points : 4 025
Par défaut errorHandler ne catch pas toutes les exceptions

Bonjour à tous

J'ai un petit soucis, j'ai mis en place un errorHandler que voici dans mon bootstrap :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
protected function _initErrorHandlerPlugin()
    {
        $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/application.ini', APPLICATION_ENV);
        $eh = new Zend_Controller_Plugin_ErrorHandler();
        $eh->setErrorHandlerModule($config->errorhandlerplugin->module)
           ->setErrorHandlerController($config->errorhandlerplugin->controller)
           ->setErrorHandlerAction($config->errorhandlerplugin->action);
        Zend_Controller_Front::getInstance()->throwExceptions(false);
        Zend_Controller_Front::getInstance()->registerPlugin($eh);
 
 
        return $eh;
    }
qui fonctionne parfaitement pour les erreurs se situant a l'extérieur des controllers :-/ exemple :

- appel d'une méthode dans mon controller depuis un objet : monobjet->loadInfo() , si celle si déclenche une exception l'errorHandler l'attrape correctement.

- appel d'une méthode non existante dans mon controller exemple : loadinfo() , celle ci déclenche une exception mais le errorHandler n'est JAMAIS appelé ( j'ai débuggé pas à pas ... ) le type de l'exception est bien récupéré par zend , mais ne remonte jamais a l'errorHandler , 2 jours que j'y suis et je ne comprend pas ...

Merci d'avance
__________________
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
le_chomeur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2011, 19h59   #2
Invité de passage
 
Inscription : juin 2011
Messages : 5
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 5
Points : 3
Points : 3
Bonjour,

Désolé mais je n'ai pas la réponse à votre question, cependant j'ai moi même une question sur l'un de vos codes mais votre messagerie privé est pleine, aussi je me suis permis cette fourberie de répondre à votre message le plus récent en espérant que vous lui suivez ...

Si vous le voulez bien et pour ne pas polluer cette discution ma question et problème est ici http://www.developpez.net/forums/d64...x/#post6074222

merci d'avance
Claudeine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2011, 10h39   #3
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
As-tu résolu ton problème ?
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 09h24   #4
Expert Confirmé Sénior
 
Avatar de le_chomeur
 
Développeur informatique
Inscription : février 2006
Messages : 3 563
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 3 563
Points : 4 025
Points : 4 025
Bonjour, je n'ai pas solutionné le problème, hormis catché les exceptions dans les controllers

je ne comprend d'ailleurs toujours pas pourquoi les exceptions qui se trouve dans la couche inférieur sont remonté au error handler et non celle des controllers ^^
__________________
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
le_chomeur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 10h07   #5
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Je peux voir ton application.ini ?
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 10h29   #6
Expert Confirmé Sénior
 
Avatar de le_chomeur
 
Développeur informatique
Inscription : février 2006
Messages : 3 563
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 3 563
Points : 4 025
Points : 4 025
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
[production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 1
resources.layout.layoutPath = APPLICATION_PATH "/views/layouts"
resources.layout.layout = "layout"
 
errorhandlerplugin.module     = Application
errorhandlerplugin.controller = error
errorhandlerplugin.action     = error
 
log.path = APPLICATION_PATH "/log/erreur.log"
log.type = "debug"
 
resources.translate.registry_key = "Zend_Translate"
resources.translate.adapter = "ini"
resources.translate.options.scan = "directory"
resources.translate.data = APPLICATION_PATH "/languages"
resources.translate.locale = "fr" ; default language
 
service_url = "http://192.168.6.130:8080/sp-back/"
service_timeout = 10
 
//langue par défaut
resources.translate.default = fr
 
resultsPerPage = 4
resultsPerPageCarousel = 12
le voici j'ai viré la partie développement , que je n'utilise pas actuellement
__________________
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
le_chomeur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 10h36   #7
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Tu as plusieurs modules ?
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 11h03   #8
Expert Confirmé Sénior
 
Avatar de le_chomeur
 
Développeur informatique
Inscription : février 2006
Messages : 3 563
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 3 563
Points : 4 025
Points : 4 025
non un seul celui de mon application principale ( nommé application )
__________________
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
le_chomeur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 13h08   #9
Expert Confirmé Sénior
 
Avatar de le_chomeur
 
Développeur informatique
Inscription : février 2006
Messages : 3 563
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 3 563
Points : 4 025
Points : 4 025
toujours aucunes idées ??
__________________
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
le_chomeur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 13h56   #10
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Je n'ai jamais fait une gestion d'erreurs de cette façon, je vais la mettre en place en suivant tes directives et je verrais ce que cela donne
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2011, 14h12   #11
Expert Confirmé Sénior
 
Avatar de le_chomeur
 
Développeur informatique
Inscription : février 2006
Messages : 3 563
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2006
Messages : 3 563
Points : 4 025
Points : 4 025
si tu as besoins d'un exemple rapide :
- créer un projet en ligne de commande via les zend tools
- met en place les error handler ( cf la doc ou je t'envois les fichiers + configuration prète )
- puis créer une classe dans le répertoire model
- créer un controler + action
- dans cette action instancie ta classe précédemment créé.

tout est prèt, pour tester :

génère exprès une exception dans la classe throw new exception
=> elle est catchée par l'error handler

génère une exception dans l'action du controller
=> plantage
__________________
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
le_chomeur est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h45.


 
 
 
 
Partenaires

Hébergement Web