java - JSP session.getAttribute异常错误

标签 java jsp session

所以我正在尝试使用 session 制作购物车。 如果我第一次添加一个项目,它将成功,但如果我添加另一个项目,它将作为异常错误返回。 (当您以成员(member)身份登录时,我已经声明了 session.setAttribute("i","0"))

这是 doAddCart.jsp

<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%
    String id = request.getParameter("id");
    String qty = request.getParameter("qty");
    String temp = (String)session.getAttribute("i");
    int temp2 = Integer.parseInt(temp)+1;
    session.setAttribute("i",temp2);
    temp = Integer.toString(temp2);
    session.setAttribute(temp,id);
    session.setAttribute("q"+temp,qty);
    response.sendRedirect("../product.jsp");
%>

这是我收到的错误

org.apache.jasper.JasperException: An exception occurred processing JSP page /Controller/doAddCart.jsp at line 5

2: <% 
3:  String id = request.getParameter("id"); 
4:  String qty = request.getParameter("qty"); 
5:  String temp = (String)session.getAttribute("i"); 
6:  int temp2 = Integer.parseInt(temp)+1; 
7:  session.setAttribute("i",temp2); 
8:  temp = Integer.toString(temp2);


Stacktrace:     org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)  org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)   javax.servlet.http.HttpServlet.service(HttpServlet.java:722) root cause

java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String  org.apache.jsp.Controller.doAddCart_jsp._jspService(doAddCart_jsp.java:68)  org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)  javax.servlet.http.HttpServlet.service(HttpServlet.java:722)    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)   javax.servlet.http.HttpServlet.service(HttpServlet.java:722) note The full stack trace of the root cause is available in the Apache Tomcat/7.0.29 logs.

有没有人能解决这个问题?

最佳答案

试试这条线

session.setAttribute("i", String.valueOf(temp2));

关于java - JSP session.getAttribute异常错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30491713/

相关文章:

java - Google App Engine JDO 查询引用其他表

java - 使用 spring mvc 下载的 Xlsx 文件已损坏且内容类型已更改

c# - Powershell 通用 session 并在 Exchange 远程管理 session 中导入此 session

java - 从不同的区域设置货币格式格式化字符串中的货币

java - 是否有任何支持 C 预处理器的 Java IDE?

java - String-1 > 起始字

jsp - 如何从 HttpServlet 请求中获取操作以分派(dispatch)到多个页面

java - 如何从单个 jsp 中的 onload 和 onclick 事件调用 java 操作类

session - 访问我的 Axis2 Web 服务时 Chrome 丢失 session

java - 对其他 Spring Boot 应用程序的集中 session 管理