2012-03-13 1 views
5

J'ai également effectué une publication croisée dans Javaranch. J'ai fait ma diligence raisonnable en faisant de la recherche Google. Je n'ai trouvé aucune réponse.Grails - OSIV - Arrêtez le filtre "Ouvrir la session dans la vue" pour les ressources statiques

Nous avons une application Web de base de service REST, pour laquelle le backend est implémenté en utilisant Groovy et Grails (1.3.7 avec Groovy 1.7.x). Je comprends comment fonctionne Open Session In View en général pour Hibernate, et lors de la configuration d'Hibernate avec Spring, nous pouvons spécifier pour quel ensemble d'URL, OSIV devrait fonctionner dans la configuration du filtre. Le problème est que je ne peux pas trouver comment exclure un ensemble d'URL de la portée du filtre OSIV (comme la correspondance * .js, * .gif, etc). J'ai trouvé dans le journal Hibernate, que même pour une demande de fichier Javascript, Open Session In View se lance et ouvre une session et la ferme.

Merci d'avance.

Répondre

7

Grails a deux implémentations du modèle OSIV, GrailsOpenSessionInViewFilter et GrailsOpenSessionInViewInterceptor. Le filtre a été utilisé dans les versions antérieures de Grails, mais l'intercepteur est maintenant ce qui est utilisé (au moins dans 1.2, 1.3 et 2.0). Comme il s'agit d'un WebRequestInterceptor, il ne s'applique qu'aux requêtes de contrôleurs et pas aux requêtes statiques pour JavaScript, CSS, images, etc. Il n'y a donc pas de problème de performance pour créer et lier inutilement une session Hibernate pour de simples demandes de fichiers.

+0

Merci d'avoir répondu! - Susanta – cspider

+0

N'hésitez pas à l'accepter comme réponse correcte :) –

Questions connexes