0

有没有办法让某些特定的 url 不被 spring mvc 控制器拦截?

web.xml

 <servlet>
    <servlet-name>mvc-dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>mvc-dispatcher</servlet-name>
    <url-pattern>*.jsp</url-pattern>
  </servlet-mapping>

控制器:

@RequestMapping(value="getState.jsp", method = RequestMethod.GET)
    public @ResponseBody Map<String,? extends Object> loadStates() {

....... }

现在,如果我请求 index.jsp,它会说“未找到映射”并且该页面不会被呈现。
在基于注释的部署中避免这种情况的最佳做法是什么?

4

1 回答 1

2

排除某些 URL 被调度程序 servlet 拦截的一般方法是添加以下内容:

 <servlet-mapping>
   <servlet-name>default</servlet-name>  
   <url-pattern>URLYouWantToExclude</url-pattern>
 </servlet-mapping>

这应该适用于 Tomcat 和 Jetty。

于 2013-09-27T09:40:58.200 回答