jstlを使用してハッシュマップのarraylistからデータを印刷または取得できません。 bug_id、作成日、要約、arraylistに存在する各バグのホワイトボードなどの詳細をテーブルに表示したい。以下はJSPとサーブレットのコードです。修正を提案してください。JSTLでハッシュマップのarraylistを繰り返すことができません
home.jspを: -
<form action="IncomingBugs">
<table class="ui single line table">
<thead>
<tr>
<th>Bug Id</th>
<th>Creation Date</th>
<th>Summary</th>
<th>Whiteboard</th>
</tr>
</thead>
<tbody>
<c:forEach var="row" items="${list}">
<tr>
<td><c:out value="${row.bug_id}"/></td>
<td><c:out value="${row.creation_ts}"/></td>
<td><c:out value="${row.short_desc}"/></td>
<td><c:out value="${row.status_whiteboard}"/></td>
</tr>
</c:forEach>
</tbody>
</table>
</form>
IncomingBugs.jsp: - 以下
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
OracleConnection oc=new OracleConnection();
try {
ArrayList<HashMap<String, Object>> bugList=oc.getbugList(null);
ArrayList<HashMap<String, String>> blr=new ArrayList<HashMap<String, String>>();
for (HashMap<String, Object> bugMap : bugList)
{
HashMap<String,String> bl=new HashMap<String, String>();
String bugzilla_id = bugMap.get("bug_id").toString();
String creation_ts = bugMap.get("creation_ts").toString();
String short_desc = bugMap.get("short_desc").toString();
String status_whiteboard=bugMap.get("status_whiteboard").toString();
bl.put("bug_id", bugzilla_id);
bl.put("creation_ts", creation_ts);
bl.put("short_desc", short_desc);
bl.put("status_whiteboard", status_whiteboard);
blr.add(bl);
}
request.setAttribute("list",blr);
RequestDispatcher dispatcher = request.getRequestDispatcher("/home.jsp");
dispatcher.forward(request, response);
}
は、私が表に印刷したいもののJavaサンプル・コードである: -
ArrayList<HashMap<String, Object>> bugList = (ArrayList<HashMap<String, Object>>)request.getAttribute("list");
for (HashMap<String, Object> bugMap : bugList)
{
String bugzilla_id = bugMap.get("bug_id").toString();
String creation_ts = bugMap.get("creation_ts").toString();
String summary = bugMap.get("summary").toString();
String status_whiteboard=bugMap.get("status_whiteboard").toString();
out.println("<tr>");
out.println("<td>"+bugzilla_id+"</td>");
out.println("<td>"+creation_ts+"</td>");
out.println("<td>"+summary+"</td>");
out.println("<td>"+status_whiteboard+"</td>");
out.println("</tr>");
}
エラーメッセージが表示されますか?あるいは、このコードでは何が期待できますか? *修正*は質問ではありません。 –
私は何の誤りもありません。私は、bug_id、creation_ts、summary、status_whiteboardを表に出力したい。私はJSPでJavaを使用しようとしましたが、まだ動作していませんhttps://stackoverflow.com/questions/46042030/http-status-500-unable-to-fetch-details-from-hashmap-to-jsp –
JSP ELチェックスコープ?それは長い時間がかかりましたが、あなたはリクエスト属性*を設定しています。 –