<servlet> <servlet-name>cms</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>cms</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
@RequestMapping({ "/", "/index" ,""}) public String index(Model model) { return "index/index"; }
原本index.jsp的路径是WEB-INF/jsp/index/index.jsp
但是由于webapp下有index.jsp, 结果就是当输入
ipaddress:8080/的时候,
会进入到webapp/index.jsp, 并且这个ipaddress:8080/这个地址不受springmvc的拦截器的控制。也就是:
<mvc:interceptor> <mvc:mapping path="/**"/> <mvc:exclude-mapping path="/beta"/> <bean class="com.lj.cms.web.FrontendInterceptor"></bean> </mvc:interceptor> <mvc:interceptor> <mvc:mapping path="/index.jsp"/> <mvc:exclude-mapping path="/beta"/> <bean class="com.lj.cms.web.FrontendInterceptor"></bean> </mvc:interceptor>
上述的配置都不会起到作用。
试了很久, 暂时找到解决方法是删除webapp下的index.jsp文件。
这样启动tomcat, 再次输入ipaddress:8080/, 拦截器就会起作用了。