[英]Send data from servlet to jsp
我试图将列表从servlet发送到jsp页面。 这是servlet代码:
Query q = new Query("post").addSort("time", SortDirection.DESCENDING);
PreparedQuery pq = datastore.prepare(q);
QueryResultList<Entity> results = pq.asQueryResultList(fetchOptions);
for (Entity entity : results) {
System.out.println(entity.getProperty ("content"));
System.out.println(entity.getProperty ("time"));
}
req.setAttribute("postList",results);
req.getRequestDispatcher("/tublr.jsp").forward(req, resp);
jsp代码:
<%
QueryResultList<Entity> result = request.getAttribute("postList");
for (Entity entity : results) {
<b> IT WORRRKKKK !!! </b> <br>
}
%>
但我得到一个错误
编辑:我添加了
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.List,com.google.appengine.api.datastore.Query.SortDirection,com.google.appengine.api.datastore.*" %>
现在我得到一个新的错误
在jsp文件中的第37行出现错误:/tublr.jsp类型不匹配:无法从Object转换为QueryResultList .....由以下原因引起:
org.apache.jasper.JasperException:无法为JSP编译类:
我是在学校里做的,现在我们必须像这样,我们必须在jsp页面中使用java。
不要在JSP页面上进行任何编码。 有一个用于此类内容的JSTL库,要迭代和显示您应使用forEach
标签的内容:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
和for循环
<x:forEach select="${postList}" var="item">
... code
</x:forEach>
您是否已在jsp中导入QueryResultList
?
您忘记了HTML代码的<%%>
<%
QueryResultList<Entity> result = request.getAttribute("postList");
for (Entity entity : results) {
%> <b> IT WORRRKKKK !!! </b> <br><%
}
%>
您需要将从request.getAttribute("postList")
获得的列表request.getAttribute("postList")
为QueryResultList
。
<%
QueryResultList<Entity> result =(QueryResultList)request.getAttribute("postList");
for (Entity entity : result) {
// Your code goes here You can use <%= %> to print values.
// <b> IT WORRRKKKK !!! </b> <br>
}
%>
有关表达的更多信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.