我试图将一个会话变量中的List从servlet ComprasController发送到jsp Compras.jsp,但我在某些行中有错误,我找不到它的位置
这是servlet
ProductoDAO managerProductos = new ProductoDAO();
List<ProductoBO> carro;
HttpSession sesion = request.getSession();
ProductoBO producto;
if (sesion.getAttribute("carro")==null) {
carro = new ArrayList<ProductoBO>();
} else {
carro = (List<ProductoBO>) sesion.getAttribute("carro");
}
switch (request.getParameter("accion")) {
case "agregar":
producto = managerProductos.findProductoBO(request.getParameter("id"));
carro.add(producto);
request.getSession().setAttribute("carro", carro);
response.sendRedirect("Compras/Productos.jsp");
break;
case "eliminar":
producto = managerProductos.findProductoBO(request.getParameter("id"));
carro.remove(producto);
request.getSession().setAttribute("carro", carro);
response.sendRedirect("Compras/Productos.jsp");
break;
case "confirmar":
break;
}
这是jsp文件
<%
List<ProductoBO> carro = (List<ProductoBO>) session.getAttribute("carro");
if (!carro.isEmpty()) {
out.println("<table class='table'>");
out.println("<thead>");
out.println("<tr>");
out.println("<td>Producto</td>");
out.println("<td>Agregar</td>");
out.println("</tr>");
out.println("</thead>");
out.println("<tbody>");
out.println("<h1>Tu carro</h1>");
for (ProductoBO producto : carro) {
out.println("<tr>");
out.println("<td>" + producto.getProNombre() + "</td>");
out.println("<td><input type='hidden' name='id' value='" + producto.getProCodigo() + "'><button type='submit' class='btn btn-primary btn-xs' name='accion' value='eliminar'>-</button></td>");
out.println("</tr>");
}
out.println("</tbody>");
out.println("</table>");
}
%>
添加:这是错误 enter image description here
这是ide报告 enter image description here 你能帮我吗。