【发布时间】:2018-12-10 00:47:21
【问题描述】:
我的想法用完了。我打印了从 Servlet 发送的 ArrayList 书籍,它一直显示为 null。当我在 Servlet 中打印该数组时,它会显示正确的数据集。也许你可以帮助我: 这是 Servlet:
private void listBookedPlaces(HttpServletRequest request, HttpServletResponse response)
throws Exception {
// get list of booked places from db util
List<Book> books = bookDbUtil.getBooks();
// add booked places to the request
request.setAttribute("BOOKED_LIST", books); // set Attribute (-name "BOOKED_LIST", -value books);
// send to JSP page (view)
RequestDispatcher dispatcher = request.getRequestDispatcher("/list-book.jsp");
dispatcher.forward(request, response);
}
这是我的 JSP 代码:
<%@ page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.util.*, com.pbs.web.jdbc.*" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>PSBS - Booked Parking Spaces Tracker</title>
</head>
<%
// "BOOKED-LIST" is attribiute name set in ControllerServlet
List<Book> theBooks =
(List<Book>) request.getAttribute("BOOKED_LIST");
%>
<body>
<%= theBooks %>
</body>
</html>
我认为在调度时或在 JSP 本身中一定有错误。 我 100% 确定我提供的 .jsp 文件名是正确的。 有什么想法吗?
【问题讨论】:
-
问题出在不同的文件中。在 index.html 中,我忘记添加隐藏数据类型,我稍后会使用它来识别我是否应该只显示列表,或者更新并显示。如果只显示整个 SQL 查询被省略,则没有输入查询,只查询获取数据。
标签: java jsp servlets requestdispatcher