这就是错误的提示
java.lang.ClassCastException: Item
        at jsp_servlet._cart._jspService(_cart.java:130)
        at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletSt
pl.java:263)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletSt
pl.java:302)
        at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletSt
pl.java:200)
        at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebA
rvletContext.java:2390)
        at weblogic.servlet.internal.ServletRequestImpl.execute(ServletReque
pl.java:1959)
        at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
        at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
>

解决方案 »

  1.   

    while(....)里面的这句
    Item current = (Item) elements.nextElement();
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~你每次循环都定义一次Item current,肯定会出错吧
    你可以在while外面定义:
    Item current=new Item();            //这里定义Item
    while(elements.hasMoreElements())
    {
         current = (Item) elements.nextElement(); //这里不能再定义了
         String Price=null;
         String bookname=null;
         bookname=current.getbookname();
    }
    试试行不行
      

  2.   

    楼上的,我寒~~至于楼主,很明显其它部分代码写错了
    我建议你
    Object current =  elements.nextElement();
    System.out.println(current);
    看看到底里面放的是什么
      

  3.   

    在一个JSP中接受这个向量代码
    Vector items1 = (Vector)session.getAttribute("vector");for (int i = 0; i < items1.size(); i++) {
    Item current = (Item) items1.get(i);
    String bookname=current.getbookname();
    System.out.println(bookname);
    }
      

  4.   

    用你的方法,我单独的测了一下,也没有问题,和我写的是一个意思,你打印一下你传过来的VECTOR 对不对,可能是你传来传去时,出现的问题.