SpringSecurityFilterサブクラスのdoFilterHttpが各リクエストで2回呼び出される理由についてのアイデアはありますか?私は本当にどこから探し始めるべきかわかりません。少しぼんやりした感じ。(Spring Security)サーブレットフィルタが2回呼び出されるのはなぜですか?
私は休暇中の同僚のコードをリバースエンジニアリングしています。 web.xmlの
::春のsecurity.xmlで
<filter>
<filter-name>userSecurityFilter</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>userSecurityFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>userSecurityFilter</filter-name>
<url-pattern>/json/*</url-pattern>
:
<!-- Create the filter chains for developers, users and services -->
<bean id="userSecurityFilter" class="org.springframework.security.util.FilterChainProxy">
<security:filter-chain-map path-type="ant">
<security:filter-chain pattern="/**/json/*" filters="AuthFilter,anonymousProcessingFilter,exceptionTranslationFilter,filterInvocationInterceptor"/>
<security:filter-chain pattern="/**/*.do" filters="AuthFilter,anonymousProcessingFilter,exceptionTranslationFilter,filterInvocationInterceptor"/>
<security:filter-chain pattern="/**" filters="anonymousProcessingFilter,logoutFilter,exceptionTranslationFilter,filterInvocationInterceptor"/>
</security:filter-chain-map>
</bean>
それがどのように見える、私はそれを把握することができます限りでは、ここに関連する構成です/ **/json/* URLはフィルタチェーンを2回適用しますが、他のフィルタチェーンは1回だけ取得します。私は戻って、ちょうど私が言ったことが本当に真実であることを確認するつもりです。
更新 - それはすべてのURLで起こっていません。 URL Aで一度呼び出されます。 URL Bでは、2回呼び出されます。 – morgancodes