FAQ StrutsConsultez toutes les FAQ
Nombre d'auteurs : 25, nombre de questions : 96, dernière mise à jour : 23 février 2015 Ajouter une question
Cette FAQ a été réalisée à partir des questions fréquemment posées sur les forums de http://www.developpez.com et de l'expérience personnelle des auteurs.
Nous tenons à souligner que cette FAQ ne garantit en aucun cas que les informations qu'elle propose sont correctes. Les auteurs font leur maximum, mais l'erreur est humaine. Cette FAQ ne prétend pas non plus être complète. Si vous trouvez une erreur, ou que vous souhaitez nous aider en devenant rédacteur, lisez ceci.
Les plug-ins permettent globalement à Struts de découvrir dynamiquement des ressources et/ou des services au démarrage de l'application.
Ils permettent surtout de ne pas avoir à redéfinir la servlet ActionServlet pour simplement initialiser un service au démarrage de l'application.
Les plug-ins les plus connus sont Tiles, un framework de composition de page très puissant, et le Validator qui permet de valider déclarativement ses données côtés client et serveur.
Vous pouvez aussi créer vos propres plug-ins pour adresser toutes vos problématiques qui ne seraient pas prises en compte par Struts.
Techniquement, un plug-in reçoit une notification du démarrage et de l'extinction de l'application.
Au démarrage, le framework crée une instance de chaque classe de plug-in déclaré. La méthode init() est alors appelée.
À l'extinction, la méthode destroy() est appelée.
Pour installer un plug-in dans Struts, il suffit de le déclarer dans l'élément <plug-in> du fichier de configuration struts-config.xml.
L'élément <plug-in> spécifie un nom complètement qualifié de la classe d'implémentation du plug-in.
Comme le spécifie la DTD du fichier struts-config.xml, l'élément <plug-in> peut contenir 0 ou plus éléments <set-property>.
Code xml : | Sélectionner tout |
<!ELEMENT plug-in (set-property*)>
Ces éléments permettent de passer des valeurs d'attributs au plug-in.
Exemple de déclarations de plug-ins :
Code xml : | Sélectionner tout |
1 2 3 4 5 6 | <plug-in className="foo.bar.MyPlugIn"> <set-property property="path" value="/WEB-INF/my.xml"/> </plug-in> <plug-in className="org.apache.struts.validator.ValidatorPlugIn"> <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/> </plug-in> |
Pour définir votre propre plug-in, vous devez fournir une classe d'implémentation non abstraite qui implémente l'interface PlugIn [org.apache. struts.action.PlugIn] et la déclarer dans le fichier de configuration struts-config.xml.
Vous devez redéfinir les méthodes init() et destroy() et y insérer le code d'initialisation et de destruction de votre service.
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.