JSTL arraylist。值为空
问题描述:
我正在寻找同样的问题,因为我的,但我没有发现任何东西。这是我的问题:JSTL arraylist。值为空
我有ArrayList中,其中包括豆类。我的豆类是'行'类。有setter和getters。
这是从数据库类方法:
public ArrayList<Row> getDatalist() {
datalist = new ArrayList<Row>();
try {
String query = "SELECT * FROM ...";
ResultSet r = s.executeQuery(query);
while(r.next()) {
Row row = new Row();
row.setLocation(r.getString(4));
row.setVolume(r.getInt(3));
row.setTime(r.getTime(5));
row.setDate(r.getDate(5));
datalist.add(row);
}
} catch (SQLException e) {
e.printStackTrace();
}
return datalist;
}
我的servlet:
ArrayList<Row> rows = db.getDatalist();
request.setAttribute("rows", rows);
request.getRequestDispatcher("/main.jsp").forward(request,response);
而且至少 'main.jsp中':
<c:forEach var="row" items="${rows}">
<c:out value="${row.location}"></c:out>
</c:forEach>
的问题是,$ { row.location}是空的。我的信息来源:
<c:forEach var="row" items="[[email protected], [email protected], [email protected], [email protected]]">
<c:out value=""></c:out>
</c:forEach>
任何想法?非常感谢。
答
那么,你的页面的源代码显示清楚的问题:在c
标签不被容器解释。这意味着,你忘了在JSP的顶部申报c
的taglib:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
答
请确保您已设置此:
<%@ page isELEnabled ="true"%>
使EL表达式使
+1
EL正在评估,如渲染输出所示。 – 2012-01-14 16:27:03
你有JSP中的JSTL taglib?如果这是您的呈现源代码,则不会评估您的JSTL标记。 – 2012-01-14 15:09:48