3

すべてのリクエストに対してインターセプターを実行したい。問題は、インターセプタが のようなリンクをキャプチャしますがhttp://localhost:8080/car/cardetails/105303/?currencyCode=USD、 のようなリンクをキャプチャしないことhttp://localhost:8080/index.jsp?pageName=oldLegacyPage&currencyCode=USD&locale=enです。

インターセプターは、一部のレガシー リンクを変換するために使用されます。index.jsp で始まるリクエストでもインターセプトできませんでした

これは、servlet-context.xml (Spring バージョン 3.1.1.RELEASE) で行った構成です。

<!-- DispatcherServlet Context: defines this servlet's request-processing 
    infrastructure -->
<!-- Controller Mapping Configuration -->
<interceptors>
    <interceptor>
        <mapping path="/**" />
        <beans:bean class="com.mydomain.interceptor.LegacyRequestInterceptor" />
    </interceptor>
</interceptors>

<default-servlet-handler />

ありがとうございました

アップデート:

DispatcherServlet のから/へのサーブレット マッピングを変更すると機能するようです。/*

<servlet-mapping>
    <servlet-name>appServlet</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

DefaultAnnotationHandlerMappingBean を servlet-context.xml に追加します。

<beans:bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>
4

0 に答える 0