關於解決spring 只能跳轉到.jsp 不能跳轉到.html的問題
原配置檔案:
<servlet>
<servlet-name>mobileretrieval</servlet-name><servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mobileretrieval</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
原controller
@RequestMapping(value="/toIndex.html")
public String toIndex() {
return "index.jsp";
}
@RequestMapping(value="/toTest.html")
public String toTest() {
return "test.html";
}
該配置只能返回.jsp 不能返回.html 是因為springMVC 攔截器的原因
<servlet-mapping>
<servlet-name>mobileretrieval</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping
表示攔截所有以.html結尾的URL的請求,因此跳轉到本地 test.html的請求也被攔截
解決方法:
<servlet>
<servlet-name>mobileretrieval</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mobileretrieval</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
@RequestMapping(value = "/toIndex.htm")
public String toIndex() {
return "index.jsp";
}
@RequestMapping(value = "/toIndex2.htm")
public String toIndex2() {
return "index2.html";
}