gpt4 book ai didi

java - 如何在 .JSP 文件中显示列表?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:34:01 26 4
gpt4 key购买 nike

经过一个小时的扎实研究,我仍然无法做到这一点。

这是我的 Servlet 代码:

package com.fdm.ProjectWeb.RedirectServlets;

import java.awt.List;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.naming.spi.DirStateFactory.Result;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.jstl.sql.ResultSupport;

import com.fdm.ProjectWeb.Controller.ValidateRegisterInputController;
import com.fdm.ProjectWeb.Model.OraclePullListOfUsers;
import com.fdm.ProjectWeb.Model.OracleUserManagement;

public class VerifyRedirect extends HttpServlet {

private static final long serialVersionUID = 1L;

public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException{
OraclePullListOfUsers pull = new OraclePullListOfUsers();
ResultSet rs = pull.unverifiedUsers();
List list = new List();

try {
while (rs.next()){
list.add(rs.getString(1));
}
} catch (SQLException e) {
e.printStackTrace();
}


req.setAttribute("list", list);
RequestDispatcher rd = req.getRequestDispatcher("./WEB-INF/VerifyUser.jsp");
rd.forward(req, resp);
}
}

这是我的 .JSP 代码:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
<title>Verify Users</title>
</head>
<body>

<table>
<c:forEach items="${list}" var="item">
<tr>
<td><c:out value="${item}" /></td>
</tr>
</c:forEach>
</table>

<h2>Please enter the Username of the user you want to verify</h2>
<form action="loginform" method="POST">
<label>User To Verify: <input type="text" name="userToVerify" id="userToVerify" /></label><br />
<input type="submit" value="Submit" name="submit" />
</form>

</body>

结果集中肯定有数据,就好像我在 while 循环中的 system.out.println 它显示了所有正确的值。

我收到此错误消息:

javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in &lt;forEach&gt;

如有任何帮助,我们将不胜感激!

最佳答案

javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in <forEach>

此异常发生在您的 <c:forEach items> 时不引用可以迭代的对象对象 应该是 Iterable , 一个 Map ,或者一个数组
很明显,您的 list 属性指的是不属于上述任何类别的类型。虽然类型实际上是 List , 但不是 java.util.List .

检查您的导入声明:

import java.awt.List;   // Here is the fault

应该是:

import java.util.List;

此外,您应该使用通用类型 List而不是原始类型。变化:

List list = new List();

到:

List<String> list = new List<String>();

此外,您似乎正在 doPost() 中执行预处理任务方法。不。 doPost() is used for post-processing a request .你应该使用 doget() 预处理的方法。

将所有代码移动到 doPost() 中至 doGet()方法。

关于java - 如何在 .JSP 文件中显示列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18085476/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com