从Servlet发送ArrayList <product>并在JSP中接收

时间:2017-09-15 09:08:51

标签: java jsp servlets arraylist

这是我的servlet代码。这里,productsArrayList<Products>的对象,我将其发送到JSP文件。 requestHttpServletRequest类型的对象。

request.setAttribute("listOfProducts", products);
request.getRequestDispatcher("UpdateProduct.jsp").forward(request, response);

在我的JSP中,我试图收到这个。

ArrayList<Products> product = request.getAttribute("listOfProducts");

它显示了我的错误

  

类型不匹配:无法从Object转换为ArrayList

然后我尝试了这个

ArrayList<Products> product = (ArrayList<Products>) request.getAttribute("listOfProducts");

然后我收到了这个警告

  

此行找到多个注释:        - 类型安全:未选中从对象转换为        数组列表        - 类型不匹配:无法从Object转换为        ArrayList的

1 个答案:

答案 0 :(得分:1)

以下是现代(环保!)的方式:

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:jsp="http://java.sun.com/JSP/Page"
      xmlns:c="http://java.sun.com/jsp/jstl/core">
<head>
    ...
</head>
<body>
    ...
    <c:forEach items="${listOfProducts}" var="product">
        <tr><td>${product.id} </td>
            <td>${product.name} </td>
            <td>${product.whatever} </td></tr>
    </c:forEach>
    ...
</body>
</html>

JSP的文件扩展名必须为.jspx

页面中不需要java代码。