2012-03-13 5 views
5

私はJavaranchでクロス投稿しました。私はGoogleの検索を行うことによって私のデューデリジェンスを行いました。私は何の答えも見つけられませんでした。Grails - OSIV - 静的リソース用の "Open Session In View"フィルタを停止する

私たちは、RESTサービスの基盤となるWebアプリケーションを提供しています。そのために、バックエンドはGroovyとGrails(Groovy 1.7.xの1.3.7)を使用して実装されています。私はOpen Session In ViewがHibernateの一般的な働きをしていることを理解しています.HibernateをSpringで設定する際、OSIVがフィルタ設定で動作するURLのセットを指定できます。

問題は、OSIVフィルタの範囲(* .js、* .gifなどと一致するようなもの)から一連のURLを除外する方法を見つけることができないことです。私はHibernateのログから、Javascriptのファイルリクエストでも、Open Session In Viewが起動してセッションを開き、それを閉じることがわかりました。

ありがとうございます。

答えて

7

GrailsにはOSIVパターンの2つの実装、GrailsOpenSessionInViewFilterGrailsOpenSessionInViewInterceptorがあります。フィルタは以前のバージョンのGrailsで使用されていましたが、インターセプタは現在(1.2,1.3,2.0以上で)使用されています。それはWebRequestInterceptorなので、コントローラリクエストだけに適用され、JavaScript、CSS、イメージなどの静的リクエストには適用されません。したがって、単純なファイルリクエストに対してHibernateセッションを不必要に作成したりバインドしたりすることに関するパフォーマンス上の心配はありません。

+0

お返事ありがとうございます! - Susanta – cspider

+0

それは正しい答えとしてそれを受け入れること自由に感じる:) –

関連する問題