2011-06-09 5 views
2

dans Spring 3 MVC dispather-servlet.xml avec la configuration ci-dessous, il semble que chaque fois qu'un fichier .js est appelé l'intercepteur est lancé.Spring 3 mvc: ressources provoquant l'exécution de plusieurs mvc: intercepteurs

<mvc:interceptors> 
    <bean class="com.something.SomeInterceptor" /> 
    </mvc:interceptors> 

    <mvc:resources mapping="/js/**" location="/js/" /> 
    <mvc:resources mapping="/jsp/**" location="/jsp/" /> 

Mon point de vue/jsp appelle quatre .js et l'intercepteur fonctionne quatre fois ...

Quelle est la bonne façon de configurer le fichier xml pour que cela ne se produit pas?

grâce

Répondre

4

Il est en fait le navigateur qui demande les fichiers JS, donc 4 requêtes HTTP sont faites à votre application. Vous devrez utiliser l'élément "mapping" de mvc: interceptor pour sélectionner un sous-ensemble de chemins auxquels l'intercepteur sera appliqué. Par exemple:

<mvc:interceptors> 
    <mvc:interceptor> 
    <mapping path="/secure/*"/> 
    <bean class="org.example.SecurityInterceptor" /> 
    </mvc:interceptor> 
</mvc:interceptors