gpt4 book ai didi

java - 实现 session 跟踪时出现 NullPointerException

转载 作者:太空宇宙 更新时间:2023-11-04 07:33:13 25 4
gpt4 key购买 nike

嗨,我正在练习使用 HttpServlet 进行 session 跟踪。我在此代码中(在 else block 中)收到错误空指针异常。谁能帮帮我吗?谢谢

@WebServlet(name = "SessionTracking", urlPatterns = {"/SessionTracking"})

public class SessionTracking extends HttpServlet {

/**
* Processes requests for both HTTP
* <code>GET</code> and
* <code>POST</code> methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
HttpSession session = request.getSession(true);
Integer counter = (Integer)session.getAttribute("sessionCounter");

if (session.isNew())
{
counter = new Integer(1);
session.setMaxInactiveInterval(10);
}
else
{
counter = new Integer(counter.intValue() + 1);//nullPointerException Here
}

session.setAttribute("sessionCounter", counter);
try {
/* TODO output your page here. You may use following sample code. */
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet SessionTracking</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Session Tracking: </h1>");
out.println("<p>You have visited this page <b>" + counter + "</b> times</p>");
out.println("<h3>Session Data: </h3>");
out.println("New Session: " + session.isNew() + "<br/>");
out.println("Session ID: " + session.getId());
out.println("</body>");
out.println("</html>");
}
finally
{
out.close();
}
}

最佳答案

即使根据 session.isNew(), session 不是新的,session.getAttribute("sessionCounter") 似乎也会返回 null。尝试用 counter == null 替换 session.isNew() 并查看是否有效。效果应该是一样的。

关于java - 实现 session 跟踪时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17384430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com