bug审核01 :获取cookie失败空指针异常

在前后台数据交互中,项目原先是通过cookie传输meetingCode等信息。当项目被打包成war并部署到Tomcat后,几天后发现表单数据的cookie无法正常提交,导致后台获取不到数据并报空指针异常。在请求中直接获取cookies为空。一种可能的解决方案是先通过request.getHeader(cookie)获取cookie信息。
摘要由CSDN通过智能技术生成

项目场景:

前后台数据以cookie形式进行传输:

 前台通过URL向后台传输一个meetingCode,后台根据获取到的 meetingCode 生成相应的xml文件,创建相应的的数据文件存储路径,以及将从数据库中查询到的数据信息装载到cookie中,向后台方法中发送信息后台即可根据cookie信息生成新的数据填报表单。

Cookie Code = new Cookie("meetingCode", meetingCode);
    Cookie Path = new Cookie("originPath", path);
    Cookie zipName = new Cookie("zipName", genetateName);
    Cookie subjectCodes = new Cookie("subjectCodes", detailSubjectCode);
    Cookie subStorage = new Cookie("subStorage", detailFileStorage);
 
    response.addCookie(Code);
    response.addCookie(Path);
    response.addCookie(zipName);
    response.addCookie(subjectCodes);
    response.addCookie(subStorage);
    out.println("detailFileStorage"+detailFileStorage);
    response.sendRedirect("/GZJGInforUpload/meetingUpload/UploadInfor.jsp");
 


问题描述

之前的项目是正常运转的,后来将该项目打包(war)后部署到Tomcat上,几天之后发现表单数据的cookie无法提交(原本的eclipse也和Tomcat部署在该服务器上),前台表单保存好数据后向后台提交数据,后台获取不到对应的cookie数据,报错(空指针异常):

在路径为/GZJGInforUpload的上下文中,Servlet[jsp]的Servlet.service()引发了具有根本原因的异常java.lang.NullPointerException java.lang.NullPointerException

从请求的cookie中获取相关信息:

Cookie cookies[]=request.getCookies();

 但是获取到的cookie中没有包含之前发送的cookie信息,项目报错,打开相关jsp转换后的Java文件(D:\tomcat\apache-tomcat-8.5.57\work\Catalina\localhost\GZJGInforUpload路径:)也显示该cookie无法被接收到。


原因分析:

在网上查了一些资料,具体原因没有明白 ,但是找到了解决方法


解决方案:

在获取cookie的代码前再添加一行,修改代码为 :

String cookieHeader  =request.getHeader("cookie");
 Cookie cookies[]=request.getCookies();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值