
| auteur : Gildas Cuisinier |
Dans une application Web, il n'est pas utile de créer l'ApplicationContext à la main via une des implémentations de cette interface.
En effet, Spring fourni un Listener afin de gérer cela :
< listener >
< listener-class >
org.springframework.web.context.ContextLoaderListener
< / listener-class >
< / listener >
|
Par défaut, ce Listener va charger un fichier /WEB-INF/applicationContext.xml, et stocker l'ApplicationContext dans le ServletContext.
Il est possible de spécifier un ou plusieurs fichiers à charger à la place du fichier par defaut. Pour cela, il faut utiliser un paramètre de contexte :
< context-param >
< param-name > contextConfigLocation< / param-name >
< param-value > /WEB-INF/applicationContext*.xml< / param-value >
< / context-param >
|
Ensuite, dans les servlets ( ou toute autre classe possèdant une référence au ServletContext ), il est possible de récupérer l'applicationContext via :
WebApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext (servletContext);
|
|
lien : Documentation officielle sur l'intégration de Spring dans les applications Web
|
| auteur : Gildas Cuisinier |
Une fois qu'un context Spring a été crée dans l'application Web, il est possible d'injecter un Bean Spring dans une Bean JSF.
Pour ce faire, il faut tout d'abord ajouter un variable-resolver dans le faces-config.xml :
faces-config>
< application >
< variable-resolver > org.springframework.web.jsf.DelegatingVariableResolver< / variable-resolver >
< / application >
< / faces-config >
|
Une fois cela fait, il est possible de lier un Bean Spring comme une propriété du Bean JSF :
< managed-bean >
< managed-bean-name > monBeanJSF< / managed-bean-name >
< managed-bean-class > com.developpez.spring.jsf.MonBeanJSF< / managed-bean-class >
< managed-bean-scope > request< / managed-bean-scope >
< managed-property >
< property-name > userService< / property-name >
< value > #{userService}< / value >
< / managed-property >
< / managed-bean >
|
Dans cet exemple, #{userService} fait référence à un Bean défini dans Spring, avec le nom userService.
|
Consultez les autres F.A.Q's
Les sources présentés sur cette pages sont libre de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2004
Developpez LLC. Tout 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'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérets.
Cette page est déposée à la SACD.
|