2016-10-03 27 views
0

我正在使用java servlets和JSP處理項目。Jsp不會顯示包含內容的表

我有一個java類,生成一個產品列表,類型List<Product>,我保存了變量Products中的列表。

Ex: List<Product> products = ProductIO.selectProducts(); 

訪問我使用的每個列表的名稱描述。 (打印到屏幕)

System.out.println(products.get(i).getDescription()); 

好吧!現在問題出現了,我想要生成一個表並將所有項目描述放在那裏,但是我得到一個空白表,並且我假設它是不好的語法。我的products.jsp代碼。

<!DOCTYPE html> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <title>Murach's Java Servlets and JSP</title> 
    <link rel="stylesheet" href="styles/main.css" type="text/css"/> 
</head> 
<body> 
<h1>CD list</h1> 
<table> 
    <tr> 
     <th>Description</th> 
     <th>&nbsp;</th> 
    </tr>   
    <c:forEach var="product" items="${products}" varStatus ="i"> 
    <tr> 
     <td><c:out value='${product.get(i).getDescription}' /></td> 
    </tr> 
    </c:forEach> 
</table> 
</body> 
</html> 
+0

'System.out.println(products.get(i).getDescription());'這是否給你任何東西在控制檯上? –

+0

我認爲你需要做'$ {product.get(i).getDescription()}'或'$ {product.get(i).description}'而不是你在那裏做什麼。 – Zircon

+0

應該是'product.description'? – auntyellow

回答

1

EDITED

p_IO.selectProducts()可能是List<Product>,所以你不需要內的forEach提取列表。試試這個:

.... 
<c:forEach items="${p_IO.selectProducts()}" var="product" > 
    <tr> 
     <td><c:out value='${product.description}' /></td> 
    </tr> 
</c:forEach> 
.... 
+0

不幸的是我仍然空着。我嘗試了這種方式和$ {product.get(i).getDescription()}或$ {product.get(i).description}。 –

+0

您是否嘗試過'$ {products}'或'$ {products.size()}'或'out.print(request.getAttribute(「products」))'? – auntyellow

+0

謝謝你,阿姨!經過一整天的爭鬥。你的確切代碼上面的工作! –