On ne peut pas faire une ArrayList de liste de liste de string
On ne peut pas faire une ArrayList de liste de liste de string
Ben si... tu utilises quelle version de java ?
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Je suis avec la lib jre6
Sa me met que arrayList cannot be resolved to a type
Code : Sélectionner tout - Visualiser dans une fenêtre à part List<List<String>> list = new ArrayList<List<List<String>>>();
Si tu utilises Eclipse, mets-toi derriere ArrayList et fais Ctrl+Espace.
L'auto-completion te proposera d'ajouter l'import qu'il faut.
Sinon, rajoute à la main cette ligne en début de source (c'est plus propre)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2<%@page import="java.util.ArrayList"%>
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Non toujours pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part type mismatch cannot convert from ArrayList<list<list<string>>> to list<list<string>>
List pas list !
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
C'est ce que j'ai fais. j'ai juste oublier de les mettre dans l'erreur
OK, montre la page actuelle, se sera plus simple.
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
voila ma page JSP
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 <form name = "rechAffaire" method ="post" action="/AppRevege/rechAff"> <fieldset> <legend>Rechercher par n°affaire</legend><br /> <span>n°Affaire :</span> <select name="affaire" id="affaire" style = "width: 120px"> <option value = -1>-------n°affaire-------</option> <% DBConnexion dbc_aff = new DBConnexion(); String sql_aff = "SELECT num_affaire FROM numero_aff ORDER BY num_affaire"; ResultSet resultat_aff = dbc_aff.recupereRequete(sql_aff); while(resultat_aff.next()) { out.print("<option value = "+resultat_aff.getString("num_affaire")+">"+resultat_aff.getString("num_affaire")+"</option>"); } dbc_aff.closeConnexion(); %> </select> <% List<List<String>> list = new ArrayList<List<List<String>>>(); Iterator it = list.iterator(); out.write("<TABLE BORDER=1 width='100%'><TR><TH>N°Affaire</TH><TH>N°CTV</TH><TH>N°CCS</TH><TH>N°</TH><TH>Type Voie</TH><TH width='25%'>Nom Voie</TH><TH>CP</TH></TR>"); while (it.hasNext()) { List<String> record = (List<String>)it.next(); Iterator it2 = record.iterator(); out.write("<tr>"); while (it2.hasNext()) { out.write("<td>" + it2.next() + "</td>"); } out.write("</tr>"); } out.write("</table>"); %> </fieldset> </form> <center><img src="images/valider.png" onmouseover="this.src='images/validerhover.png';" onmouseout="this.src='images/valider.png';" onclick="document.getElementById('rechAffaire').submit();" /></center>
Ce n'est qu'une partie, il me faut le tout...
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Voila tout le code ma JSP
Et tout le code de ma servlet
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <%@ page import="java.sql.*,connexion.*"%> <link rel="stylesheet" href="style.css" type="text/css" /> <%@page import="java.util.List"%> <%@page import="java.util.Iterator"%> <%@page import="java.util.ArrayList"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Rechercher une affaire</title> </head> <body> <form name = "rechAffaire" method ="post" action="/AppRevege/rechAff"> <fieldset> <legend>Rechercher par n°affaire</legend><br /> <span>n°Affaire :</span> <select name="affaire" id="affaire" style = "width: 120px"> <option value = -1>-------n°affaire-------</option> <% DBConnexion dbc_aff = new DBConnexion(); String sql_aff = "SELECT num_affaire FROM numero_aff ORDER BY num_affaire"; ResultSet resultat_aff = dbc_aff.recupereRequete(sql_aff); while(resultat_aff.next()) { out.print("<option value = "+resultat_aff.getString("num_affaire")+">"+resultat_aff.getString("num_affaire")+"</option>"); } dbc_aff.closeConnexion(); %> </select> <% List<List<String>> list = new ArrayList<List<List<String>>>(); Iterator it = list.iterator(); out.write("<TABLE BORDER=1 width='100%'><TR><TH>Id</TH><TH>N°Affaire</TH><TH>N°CTV</TH><TH>N°CCS</TH><TH>N°</TH><TH>Type Voie</TH><TH width='25%'>Nom Voie</TH><TH>CP</TH></TR>"); while (it.hasNext()) { List<String> record = (List<String>)it.next(); Iterator it2 = record.iterator(); out.write("<tr>"); while (it2.hasNext()) { out.write("<td>" + it2.next() + "</td>"); } out.write("</tr>"); } out.write("</table>"); %> </fieldset> </form> <center><img src="images/valider.png" onmouseover="this.src='images/validerhover.png';" onmouseout="this.src='images/valider.png';" onclick="document.getElementById('rechAffaire').submit();" /></center> </body> </html>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 package com.eclipse.traitement; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.sql.*; import java.util.ArrayList; import java.util.List; /** * Servlet implementation class for Servlet: TraiterRech * */ @SuppressWarnings("serial") public class TraiterRech extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#HttpServlet() */ public TraiterRech() { super(); } /* (non-Java-doc) * @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String chp_affaire = request.getParameter("affaire"); String url = "jdbc:oracle:thin:@163.89.180.102:1521:ACRPARIS"; String login = "..."; String password = "...*"; List<List<String>> list = new ArrayList<List<String>>(); try{ Connection dbc = DriverManager.getConnection(url,login,password); if (chp_affaire != null) { PreparedStatement pstmt_affaire = dbc.prepareStatement("SELECT id_fouille,num_ctv,num_ccs,num_adr,nom_type_voie,nom_voie,num_cp FROM fouille, ccs,numadr,nomvoie,typevoie,code_postal,numero_aff WHERE fouille.id_numero_aff = numero_aff.id_numero_aff AND fouille.id_ccs = ccs.id_ccs AND fouille.id_numAdr = numadr.id_numAdr AND fouille.id_nom_voie = nomvoie.id_nom_voie AND fouille.id_type_voie = typevoie.id_type_voie AND fouille.id_cp = code_postal.id_cp AND num_affaire= ?"); pstmt_affaire.setString(1, chp_affaire); ResultSet resultat_affaire = pstmt_affaire.executeQuery(); ResultSetMetaData rsmd = resultat_affaire.getMetaData(); while (resultat_affaire.next()) { List<String> record = new ArrayList<String>(); for (int i = 0; i < rsmd.getColumnCount(); i++) { record.add(resultat_affaire.getString(i+1)); } list.add(record); } request.setAttribute("Liste", list); request.getRequestDispatcher("/rechAffaire.jsp").forward(request, response); dbc.close(); } dbc.close(); } catch(Exception e){ e.printStackTrace(); } } }
Je pensais à un problème d'import mais finalement, tu as mis un ">" de trop à droite, il faut ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ArrayList<list<list<string>>()
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Non yen a pas de trop tu en ouvre trois et tu en referme que deux.
Car si j'en met que deux il me dit qu'il faut que j'en insère un.
J'ai de la m... dans les yeux ce matin, c'est pas possible !
On veut une liste de liste de String : c'est donc
Toi, tu demandes une liste de liste de String et tu créés une liste de liste de liste de String
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 List<List<String>> list = new ArrayList<List<String>>();
Bref, recopie la ligne du haut...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 List<List<String>> list = new ArrayList<List<List<String>>>();
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
ça affiche bien l'en-tete du tableau mais celui-ci ne se rempli pas
Pourquoi je ne peux pas faire ce cast?
Code : Sélectionner tout - Visualiser dans une fenêtre à part List<List<String>> list = (List<List<String>>) request.getParameter("Liste")
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <% List<List<String>> list = new ArrayList<List<String>>(); Iterator it = list.iterator(); out.write("<TABLE BORDER=1 width='100%'><TR><TH>id</TH><TH>N°Affaire</TH><TH>N°CTV</TH><TH>N°CCS</TH><TH>N°</TH><TH>Type Voie</TH><TH width='25%'>Nom Voie</TH><TH>CP</TH></TR>"); while (it.hasNext()) { List<String> record = (List<String>)it.next(); Iterator it2 = record.iterator(); out.write("<tr>"); while (it2.hasNext()) { out.write("<td>" + it2.next() + "</td>"); } out.write("</tr>"); } out.write("</table>"); %>Pourquoi ça ne me rempli pas mon tableau?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String chp_affaire = request.getParameter("affaire"); String url = "jdbc:oracle:thin:@....."; String login = "...."; String password = "....."; List<List<String>> list = (List<List<String>>) request.getAttribute("Liste"); try{ Connection dbc = DriverManager.getConnection(url,login,password); if (chp_affaire != null) { PreparedStatement pstmt_affaire = dbc.prepareStatement("SELECT id_fouille,num_ctv,num_ccs,num_adr,nom_type_voie,nom_voie,num_cp FROM fouille, ccs,numadr,nomvoie,typevoie,code_postal,numero_aff WHERE fouille.id_numero_aff = numero_aff.id_numero_aff AND fouille.id_ccs = ccs.id_ccs AND fouille.id_numAdr = numadr.id_numAdr AND fouille.id_nom_voie = nomvoie.id_nom_voie AND fouille.id_type_voie = typevoie.id_type_voie AND fouille.id_cp = code_postal.id_cp AND num_affaire= ?"); pstmt_affaire.setString(1, chp_affaire); ResultSet resultat_affaire = pstmt_affaire.executeQuery(); ResultSetMetaData rsmd = resultat_affaire.getMetaData(); while (resultat_affaire.next()) { List<String> record = new ArrayList<String>(); for (int i = 0; i < rsmd.getColumnCount(); i++) { record.add(resultat_affaire.getString(i+1)); } list.add(record); } request.setAttribute("Liste", list); request.getRequestDispatcher("/rechAffaire.jsp").forward(request, response); dbc.close(); } dbc.close(); } catch(Exception e){ e.printStackTrace(); } }
Ma premier liste ne se rempli pas de la deuxième liste.
Personne peut m'aider?? svp
De plus on dirai que mn dispatcher ne fait pas son travail.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager