java.lang.ClassCastException: 帮我看看这个问题怎么解吧!

来源:百度知道 编辑:UC知道 时间:2024/06/21 00:09:18
错误出现的地方是:

List list = (List)session.getAttribute("list");
for(int i=0;i<list.size();i++){
Courses cour = (Courses)list.get(i);
=================================================================
上面是报告出错的地方,下面是报告的异常!
=================================================================

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: cn.Model.ChooseCourses cannot be cast to cn.Model.Courses
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

root cause

java.lang.ClassCastExcep

ClassCastException 是 JVM 在检测到两个类型间的转换不兼容时引发的运行时异常。
很明显,你从session里取出的list集合内包含的对象类型应为cn.Model.ChooseCourses 而不是cn.Model.Courses ,你不能将前者强制类型转换为后者,因为2个类没有任何关系

Courses cour = (Courses)list.get(i)
改为:
ChooseCourses cour = (ChooseCourses)list.get(i)