开发者社区> 问答> 正文

spring配置的拦截器不执行:配置报错 

一直在工作中使用的springmvc,最近跟遇上一个奇怪的问题,在项目中通过mvc:interceptor的方式注入的拦截器不被执行。下面是配置文件:
web.xml
spring-servlet.xml

applicationContext.xml

spring-interceptor.xml

后台测试Controller

拦截器CheckInterceptor

现在是访问一个url eg:http:localhost:8080/projectName/app/http/testController/test 是能找到对应的controller的 方法也能的到执行 可就是进不了拦截器。下面贴上控制台打印的日志

红线上面部分就是,红线下面的是跳转后请求资源路径不对后造成的,重定向下就可以了。
请问下有谁遇上过类似的问题,或者知道是我哪里配置错,纠结了好久了。

展开
收起
kun坤 2020-06-04 10:23:56 933 0
1 条回答
写回答
取消 提交回答
  • spring-interceptor.xml
    <mvc:mapping path="/http//*" /> ######回复 @小萧蚂蚁 : 嗯 是的 然后在讲mvc:interceptors移动到spring-servlet中就可以l######按照他这个意思,应该是这样<mvc:mapping path="/http/" />吧?###### 这是我平时的配置

    <mvc:interceptors>  
    	  <mvc:interceptor>    
    	        <!-- 匹配的是url路径, 如果不配置或/**,将拦截所有的Controller -->  
    	        <mvc:mapping path="/**" /> 
    	        <!-- 排除不需要拦截的目录 -->
    	        <mvc:exclude-mapping path="/login"/>
    	        <mvc:exclude-mapping path="/assets/**"/>
    	        <mvc:exclude-mapping path="/template/**"/>
    	        <bean class="com.wh.sys.interceptor.PermissionInterceptor"></bean>    
    	    </mvc:interceptor> 
    	    <!-- 当设置多个拦截器时,先按顺序调用preHandle方法,然后逆序调用每个拦截器的postHandle和afterCompletion方法 -->  
    	</mvc:interceptors>

    ######把你的mvc:interceptor 配置写到 spring-servlet.xml 试试 ######楼主,解决了吗?

    2020-06-04 11:20:38
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多