我想为所有请求做一个拦截器。问题是拦截器捕获http://localhost:8080/car/cardetails/105303/?currencyCode=USD
之类的链接,但不捕获http://localhost:8080/index.jsp?pageName=oldLegacyPage¤cyCode=USD&locale=en
之类的链接。
拦截器用于翻译一些传统链接。 我无法拦截甚至以index.jsp
开头的请求这是我在servlet-context.xml(spring version 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映射,它似乎有效:
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
并在servlet-context.xml中添加DefaultAnnotationHandlerMapping
bean。
<beans:bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>