2013-11-03 39 views
0

我正在嘗試使用JSTL執行標準的foreach循環,但似乎無法使其工作。數據存在,因爲jps頁面的其他部分起作用。但是,這種foreach循環不:使用JSP,JSTL和EL進行Foreach循環的問題

 <p> Script version 
     <% // scrip version 
      List test = (List)request.getAttribute("names"); 

      out.println(test.get(0).toString()); 
     %> 
     </br> 
     El version 
     </br> 
     ${names} 
     </br> 
    <c:forEach var="name" items="${names}"> 
     He is: ${name} </br> 
    </c:forEach> 
    </p> 

我不確定爲什麼這是這種情況?腳本版本起作用,只是打印出$ {names}就可以看到List。但是這個foreach不起作用。

名稱是從我的控制器類發送的列表。

任何幫助將是巨大的!乾杯!

+3

您是否在JSP文件的頂部添加了JSTL標籤庫。 –

+1

當你有這樣的問題時,一定要在瀏覽器中查看生成的HTML的源代碼。我的猜測是你會在裏面找到'',表示這個標籤沒有被服務器執行,表示你忘記了聲明taglib。 –

回答

0

感謝去Sotirios DelimanolisJB Nizet指引我在正確的方向。 我需要在JSP頁面的頂部包含JSLT庫。 要做到這一點,你需要包括庫中的項目,以及使用這條線在頂部聲明它:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 

對於其他的標籤庫,你需要做的是相同的。

謝謝你們讓我朝着正確的方向發展!