问题描述:
我在ACTION中查询得到的数据用LIST来存之后,然后通过HttpSession存入,在JSP页面中取数据的时候就出现如下错误:
org.apache.jasper.JasperException: An exception occurred processing JSP page /admin_teacher.jsp at line 6865: </tr>
66: <%
67: for (int i = 0; i < tlist.size(); i++) {
68: Teacher teacherset =(Teacher)tlist.get(i);//重点就是这里,这样写不对,我应该如何写呐?请高手指教!
69:
70: %>
71: <tr>
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause java.lang.ClassCastException: [Ljava.lang.Object;
org.apache.jsp.admin_005fteacher_jsp._jspService(admin_005fteacher_jsp.java:124)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
其实我就想知道,不这样写,才能够将数据取出来!
Action的代码是(便于参考):
public class AdminTeacherAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
HttpSession httpSession = request.getSession();
String hql = null;
List teacherlist = new ArrayList();
try {
hql = "select id,t_id,pwd,t_name from Teacher";
teacherlist = HibernateService.execQuery(hql); } catch (Exception e) {
e.printStackTrace();
}
httpSession.setAttribute("teacherlist",teacherlist);
return mapping.getInputForward();
}
}
我在ACTION中查询得到的数据用LIST来存之后,然后通过HttpSession存入,在JSP页面中取数据的时候就出现如下错误:
org.apache.jasper.JasperException: An exception occurred processing JSP page /admin_teacher.jsp at line 6865: </tr>
66: <%
67: for (int i = 0; i < tlist.size(); i++) {
68: Teacher teacherset =(Teacher)tlist.get(i);//重点就是这里,这样写不对,我应该如何写呐?请高手指教!
69:
70: %>
71: <tr>
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause java.lang.ClassCastException: [Ljava.lang.Object;
org.apache.jsp.admin_005fteacher_jsp._jspService(admin_005fteacher_jsp.java:124)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
其实我就想知道,不这样写,才能够将数据取出来!
Action的代码是(便于参考):
public class AdminTeacherAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
HttpSession httpSession = request.getSession();
String hql = null;
List teacherlist = new ArrayList();
try {
hql = "select id,t_id,pwd,t_name from Teacher";
teacherlist = HibernateService.execQuery(hql); } catch (Exception e) {
e.printStackTrace();
}
httpSession.setAttribute("teacherlist",teacherlist);
return mapping.getInputForward();
}
}
解决方案 »
- struts工作流程~!
- 求解:怎样把静态html文件生成jsp文件?此问题有问题吗?
- struts2.2.3 spring3.0.4 freemarker(高手请进)
- JSP中sql语句的写法
- Spring+hibernate+Struts,寻求好的批量录入解决方法
- Java的函数编:程利用闭包和高阶函数编写模块化的 Java 代码
- 实在不行了... ...
- servlet处理完之后如何返回到前台的指定表单位置
- java程序部署到服务器上不能创建文件
- 问一个问题:在tomcat 下 如何运行 jsp
- 如何在一个项目中 如何 调用另外一个项目中的方法
- Myeclipse, tomcat 运行web页面问题
存入list里的就不是teacher对象
取出来强转就会有问题
hql 写 “from Teacher”就可以了
而已HIBERNATE执行了的:Hibernate: select teacher0_.id as col_0_0_, teacher0_.t_id as col_1_0_, teacher0_.pwd as col_2_0_, teacher0_.t_name as col_3_0_ from teacher teacher0_
类型转换错误
我看你action里没有那样写呀
你确定一下 查出来后都封装到teacher对象中了 teacher对象都放到list中了
一步一步看
打上断点 看看是不是查出来就不对