Comment afficher une liste dans un .Fichier JSP?
Après une heure de solides travaux de recherche, je ne peux toujours pas le faire.
C'est ma Servlet code:
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);
}
}
Et c'est mon .Code 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>
Le Jeu de résultats a certainement des données en elle, comme si j'système..println dans la boucle while, il montre toutes les valeurs de droite.
Et je reçois ce message d'erreur:
javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in <forEach>
Toute aide serait appréciée!
Double Possible de Comment Afficher le Contenu de la Liste sous forme de tableau dans un fichier JSP?
OriginalL'auteur DeaIss | 2013-08-06
Vous devez vous connecter pour publier un commentaire.
Cette exception se produire lorsque votre
<c:forEach items>
ne se réfère pas à un Objet, que l'on peut parcourir. Le Objet devrait êtreIterable
, unMap
, ou un tableau.Donc, clairement, votre liste attribut fait référence à la nature qui ne relèvent pas toutes de la catégorie ci-dessus. Si le type est en fait un
List
, mais pasjava.util.List
.Vérifier votre déclaration d'importation:
Il devrait être:
Aussi, vous devez utiliser le type générique
List
au lieu de brut de type. Modification::
Aussi, il me semble que vous faites la de pré-traitement tâche dans
doPost()
méthode. Ne le faites pas.doPost()
est utilisé pour post-traitement une demande. Vous devez utiliserdoget()
méthode pour de pré-traitement.Déplacer tout votre code dans
doPost()
àdoGet()
méthode.Merci beaucoup de l'homme (et à tout le monde). Surtout pour le doGet astuce 🙂
Vous êtes les bienvenus 🙂
Une petite question! Que faire si je veux envoyer les informations saisies par l'utilisateur en tant que paramètre à une autre servlet - dois-je toujours utiliser doGet() au lieu de doPost() je suis en train de lire la page vous recommandons que nous parlons!
Non, c'est ce que nous appelons le post-traitement d'une demande. Nous utilisons
doPost
.OriginalL'auteur Rohit Jain
Changement:
:
De
OriginalL'auteur Benoit Wickramarachi
essayer de l'instanciation de la liste comme ceci:
ou si cela n'aide pas peut-être fournir la liste comme un tableau, telles que:
OriginalL'auteur benny