MVC webapp に OpenSessionInViewFilter を実装しましたが、ほぼ完璧に動作します。唯一の問題は、Web サーバーから要求されたすべてのイメージ、js、css などに対してもセッションを作成することです。これは欲しくない。
私はstruts2、spring、およびhibernateを使用しています。これは私のweb.xmlです
<filter>
<filter-name>lazyLoadingFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>lazyLoadingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
したがって、url-pattern /* をマッピングしているため、すべての画像なども取得します。*.jsp と *.action に設定しようとしましたが、lazyloading-exceptions が再び発生します...どうすればよいですか? 私は今5時間答えを探していて、頭が少し頭がおかしくなっています.
私がする必要があるのは、このフィルターをすべての静的リソースを無視することだけです。それでおしまい!そして、それ以外はすべて実行できます。とても簡単に聞こえますが、どうすればいいのかわからなくて本当にイライラします。
どんな助けでも大いに感謝します。
フィルターを拡張して独自のフィルターを作成し、その中で除外する必要がありますか? そしてそうならば。どのように?
編集:フィルターチェーンの上部にある静的ファイルのフィルターマッピングを設定できるようです。そして、それらを「ByPassFilter」に送信して、これらの静的リソースのフィルターチェーンをバイパスします。これは行く方法ですか?
みんなありがとう!