0

最後の投稿

サーブレットから JSP ページに QueryResultList を送信しようとしています。私はこのコードを書きました

QueryResultList<Entity> results = pq.asQueryResultList(fetchOptions);
System.out.println("-------------------");

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

<%@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.*" %>

<%
    QueryResultList<Entity> result = request.getAttribute("postList");
    for (Entity entity : results) {           
%>  
<b> IT WORRRKKKK !!! </b> <br> 
<%
    }
%>

しかし、私はエラーが発生します An error occurred at line: 37 in the jsp file:

/tublr.jsp タイプの不一致: オブジェクトから QueryResultList 34 に変換できません: .... 原因:

org.apache.jasper.JasperException: JSP のクラスをコンパイルできません:

私は学校のためにやっているので、このようにする必要があります(jspページでJavaコードを使用)

編集:私はまだこのエラーがあります、私は理解していません、それはサーブレットでうまく動作します...

An error occurred at line: 40 in the jsp file: /tublr.jsp
results cannot be resolved
37:        QueryResultList<Entity> result = (QueryResultList<Entity>)request.getAttribute("postList");
38: 
39:            
40:            for (Entity entity : results) {           
41:                  
42:                   %>  <b> IT WORRRKKKK !!! </b> <br> <%
43:               
4

4 に答える 4

0

request.getAttribute("postList");にキャストQueryResultList<Entity>

変化する

<%
    QueryResultList<Entity> result = request.getAttribute("postList");

<%
    QueryResultList<Entity> result = (QueryResultList<Entity>)request.getAttribute("postList");

リクエスト属性がQueryResultList<Entity>. また、基本的な Java を確認する必要があります。取得した例外を理解していないようです。

于 2013-06-27T18:56:37.203 に答える
0
QueryResultList<Entity> result = (QueryResultList<Entity>) request.getAttribute("postList");
于 2013-06-27T18:58:23.083 に答える
0

これを変える

 QueryResultList<Entity> result = request.getAttribute("postList");

これに、参照してください:

 QueryResultList<Entity> result = (QueryResultList<Entity>)request.getAttribute("postList");

返すpostListがエンティティ型のリストであることを確認してください

于 2013-06-27T19:03:35.027 に答える
-1

JSP 内でスクリプトレットを使用しないようにしてください。他のユーザーが保守するのが非常に困難になるからです。代わりに、JSP で JSTL を使用できます。

于 2013-06-27T19:03:10.703 に答える