java - 无法在 JSP 中显示 arrayList

标签 java jsp servlets arraylist

我的 bean 称为 Zone,我使用 Hibernate 从 sql Server 获得了所有 Zones。 在 DAO.Class 中:

List zones = session.createQuery("FROM Zone").list();

我想将此列表从 servlet 发送到 jsp。 在 servlet.class 中

List result = dao.getListZone();
request.setAttribute("userList",result);
 RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/home.jsp");
dispatcher.forward(request,response);

在我的jsp中:

List viewList = new ArrayList();

if(request.getAttribute("userList")!=null && request.getAttribute("userList")!="")
List<Zone> userList =  (List)request.getSession().getAttribute("userList");
 itr = userList.iterator();

while(itr.hasNext())
{

    if(count%2==0)
    {
     bgcolor = "#C8E2D1";
    }
    else
    {

        bgcolor = "#EAF8EF";
    }

    viewList = (ArrayList)itr.next();
    int id = Integer.parseInt(viewList.get(0).toString());
    viewItr = viewList.iterator();
    %>

    <tr style="background-color:<%=bgcolor%>;">
    <%  
    while(viewItr.hasNext())
    {

        %>
        <td><%=viewItr.next()%></td>

它说它不能将我的 bean Zone 转换为 arrayList。它说那行

 itr = userList.iterator();

犯错误。

感谢您的帮助。


我得到这个错误:java.lang.ClassCastException: bean.Zone cannot be cast to java.util.ArrayList in the first line of the code below

viewList = (ArrayList<Zone>)itr.next();
        int id = Integer.parseInt(viewList.get(0).toString());
        viewItr = viewList.iterator();

最佳答案

1 您正在检查该属性是否存在于请求中,然后您正在从 session 中读取它

2 你需要像这样转换它

List<Zone> userList =  (List<Zone>)request.getAttribute("userList");

3 你需要使用JSTL来明确区分 View 和逻辑


另见

关于java - 无法在 JSP 中显示 arrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21371968/

相关文章:

Java Swing - 如何判断什么代码在组件上调用 paint?

javascript - SpringMVC : handling validation errors on a page with an ajax loaded <select>

jsp - JSP在Tomcat 7.0.23无法编译 但是在Tomcat 5.5.28可以运行

http - ServletResponse.reset() 是阻止未经授权(注销)用户访问 servlet 的可行方法吗?

java - 将对象绑定(bind)到 JSP 页面上的控件

java - Catalina 上的 Aptana 3 错误 - 需要旧版 Java 运行时 6

java - isCopy 字段在 android 中总是必需的吗?

mysql - 使用 html/jsp 中的文件上传将 blob 图像插入数据库

java - 如何从命令提示符编译 servlet?

java - Camel 是否可以捕获 netty 异常?