Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework
Zend Framework Forum d'entraide sur la programmation PHP avec Zend Framework. Avant de poster -> FAQ ZF, Cours ZF
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 28/11/2011, 16h55   #1
Membre habitué
 
Concepteur d'applications web
Inscription : avril 2003
Messages : 102
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Concepteur d'applications web
Secteur : Communication - Médias

Informations forums :
Inscription : avril 2003
Messages : 102
Points : 103
Points : 103
Par défaut Création de plugin de Resource

Bonjour,

j'ai mis en place le système proposé par zend pour créer des resources et qu'elles soient disponibles dans mon application.
Tout fonctionne bien en local... mais maintenant que je met en intégration, rien ne fonctionne et j'obtiens l'Exception :
Fatal error: Uncaught exception 'Zend_Application_Bootstrap_Exception' with message 'Resource matching "monPluginResource" not found'

dans mon application.ini j'ai ceci :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
autoloaderNamespaces[] = "Ilg"
autoloaderNamespaces[] = "IlgWebservice"
 
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
 
appnamespace = "Application"
 
; custom resources plugins
pluginpaths.IlgWebservice_Application_Resource = APPLICATION_PATH "/../library/IlgWebservice/Application/Resource"
 
resources.monPlugin.param=
mon fichier de plugin s'appelle MonPlugin.php et se trouve bien dans APPLICATION_PATH "/../library/IlgWebservice/Application/Resource"

le contenu de ce fichier est une classe dont le nom est IlgWebservice_Application_Resource_MonPlugin et qui hérite de Zend_Application_Resource_ResourceAbstract

En local je suis sur un windows avec le ZendServer en community edition sur une version PHP 5.3.x et sur le serveur je suis sur du linux en PHP 5.3.x
J'utilise le Zend Framework 1.11.11 sur les 2 systèmes.

Si je fais un dump de mon Bootstrap, je me rends compte que les plugins standars sont bien chargés (Mail, Cache...). Je vois également que la resource Log que j'ai surchargé (et qui se trouve donc dans IlgWebservice/Application/Resource/Log.php) est également bien chargé. J'ai donc l'impression que seules les nouveaux types de resources ne sont pas chargés... mais pourquoi ?
rebolon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 14h47   #2
Membre habitué
 
Concepteur d'applications web
Inscription : avril 2003
Messages : 102
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Concepteur d'applications web
Secteur : Communication - Médias

Informations forums :
Inscription : avril 2003
Messages : 102
Points : 103
Points : 103
Piste de solution :
les plugins de resources ne doivent pas contenir de majuscules... enfin c'est la conclusion à laquelle j'arrive après avoir débuggé Zend_Application_X et Zend_Loader_PluginLoader
Je n'arrive pas à comprendre pourquoi ils ont fait ce choix de tout mettre en minuscule puis de faire un ucfirst sur le nom de la resource.
Surtout, je n'ai vu nulle part dans la doc cette contrainte de nommage.
rebolon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 16h36   #3
Membre habitué
 
Concepteur d'applications web
Inscription : avril 2003
Messages : 102
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Concepteur d'applications web
Secteur : Communication - Médias

Informations forums :
Inscription : avril 2003
Messages : 102
Points : 103
Points : 103
C'est confirmé le problème venait bien de là.
Donc pas de majuscule dans les plugins de resources...
Fallait le savoir !
rebolon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 19h59   #4
Modérateur
 
Homme Loïc
Développeur Web
Inscription : février 2011
Messages : 680
Détails du profil
Informations personnelles :
Nom : Homme Loïc
Âge : 26
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : février 2011
Messages : 680
Points : 1 044
Points : 1 044
Si tu comprends pas pourquoi regarde les conventions de nommage de Aend tout est expliqué
5h4rk est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2011, 22h45   #5
Membre habitué
 
Concepteur d'applications web
Inscription : avril 2003
Messages : 102
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Concepteur d'applications web
Secteur : Communication - Médias

Informations forums :
Inscription : avril 2003
Messages : 102
Points : 103
Points : 103
J'ai relu la convention de nommage, mais il n'y a rien qui dit que les plugins de resources doivent être en minuscule, où alors ça m'échappe. Le camel case est préconisé dans le nommage des classes, or les plugins de resources sont des classes... de là à dire que le Zend Framework ne respecte pas ça convention de nommage, je ne m'aventurerais pas sur ce chemin là, mais nommer une classe Zend_Application_Resource_Frontcontroller et mettre en exemple de configuration via le fichier application.ini :
resources.frontController.xxx
y a de quoi se poser des questions.
rebolon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h11.


 
 
 
 
Partenaires

Hébergement Web