1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 日志拦截器报错Cannot create a session after the response has been committed

日志拦截器报错Cannot create a session after the response has been committed

时间:2019-02-08 02:24:19

相关推荐

日志拦截器报错Cannot create a session after the response has been committed

错误信息

日志拦截器AppLogInterceptor在方法处理完成之后,会对操作相关信息如参数、方法名、session信息等内容进行记录。

但是今天有同事开发时报错:

Cannot create a session after the response has been committed

相关代码如下:

public class AppLogInterceptor extends HandlerInterceptorAdapter {@Overridepublic void afterCompletion(HttpServletRequest req, HttpServletResponse resp, Object handler, Exception e)throws Exception {if (handler instanceof HandlerMethod) {HttpSession seesion = request.getSession();}}}

错误分析

错误原因:

在Response响应(response.getOutputStream())之后,才创建Session(request.getSession())。而此时已经找不到Session ID,所以会报错。

解决办法

在Response响应(response.getOutputStream())之前进行Session创建(request.getSession())。

比如,在Controller的方法中添加如下代码:

request.getSession();

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。