La prise en compte de la configuration Spring par tapestry se fait en utilisant un filter org.apache.tapestry5.spring.TapestrySpringFilter et pas org.apache.tapestry5.TapestryFilter.
Attention, il est nécessaire d'ajouter la dépendance maven tapestry-spring dans votre pom.xml, et il faut noter que les bean spring sont accessibles par l'annotation @inject de tapestry !!!
Ce dernier va remplacer le listener de contexte fournit par Spring.
Les paramètres de configuration sont les mêmes que ceux fournit pour Spring, en l'occurence :
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext-front.xml</param-value>
</context-param>
et pour le web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>portail Tapestry 5 Application</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicationContext-front.xml</param-value>
</context-param>
<context-param>
<!-- The only significant configuration for Tapestry 5, this informs Tapestry
of where to look for pages, components and mixins. -->
<param-name>tapestry.app-package</param-name>
<param-value>net.portail.web</param-value>
</context-param>
<filter>
<filter-name>app</filter-name>
<filter-class>org.apache.tapestry5.spring.TapestrySpringFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>app</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
Aucun commentaire:
Enregistrer un commentaire