tomcat org.apache.coyote.http11.HeadersTooLargeException: 尝试将更多数据写入响应标头,而不是缓冲区中有可用空间。 增加连接器上的maxHttpHeaderSize或将更少的数据写入响应头。

在我配置了inteceptor以后,访问资源并跳转的时候tomcat控制台显示如下错误

严重 [http-nio-8080-exec-181] org.apache.coyote.http11.Http11Processor.service 错误的处理请求
org.apache.coyote.http11.HeadersTooLargeException: 尝试将更多数据写入响应标头,而不是缓冲区中有可用空间。 增加连接器上的maxHttpHeaderSize或将更少的数据写入响应头。

出现该错误的原因是,我配置了inteceptor。当请求试图访问资源的时候,如果他的条件不满足,那么就跳转到其他资源。然而我配置的inteceptor拦截的又是根下面的所以资源,所以就会出现下面的情况。

访问资源A条件不满足,从而访问资源B。当访问资源B时,条件同样不满足,于是又再次转发,试图访问资源B,仍然不满足。。。

简单来说就是循环跳转了。

解决办法就是要么在XML配置中排除你要跳转的目标资源的拦截,要么在inteceptor代码中排除或者指定。

posted @ 2020-09-10 17:19  秦晓  阅读(1277)  评论(0编辑  收藏  举报