Bonjour,
j'essaie de faire filtre une résultat sous forme d'une liste en entrant la date de début et la date de fin.
voici la table de base de données:
Nom : base.png
Affichages : 742
Taille : 15,2 Ko
voici listeentree.jsp:
Nom : 11111.png
Affichages : 848
Taille : 15,7 Ko
j'ai fait une méthode pour récupérer le résultat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
public List<Entree> RechercherParDate(Date datedebut,Date datefin) {
		return (ArrayList<Entree>)em.createQuery("SELECT a FROM Entree a WHERE dateEntree BETWEEN '"+datedebut+"' AND '"+datefin+"'").getResultList();
		}
voici le code de listeentree.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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@page import="entity.Entree"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>LISTE DES ENTREES EN STOCK</title>
</head>
<body>
<div>
		<h2>
			<b style="color: blue;"> Liste des entrées en stock</b>
		</h2>
		<hr width="100%;">
	</div>
 
<form>	<table>
<tr><td>Date entrée début : <input type="date" name="datedebut" required ><td> &nbsp <input type="button" value="Nouvelle Entrée" onclick="document.location.href='NouvelleEntreeCtl';"></br></tr>
</tr><td>Date entrée fin: <input type="date" name="datefin" required></td> &nbsp<td><input type="submit"  value="Filtrer" action="ListeEntreesCtl" method="post" ></td></tr>
 
<table border="1px" width="80%">
 
    	    <tr>
					<td><b>Date Entrée</b></td>
					<td><b>Reférence</b></td>
					<td><b>Montant total</b></td>
					<td><b>Action</b></td>
				</tr>
 
<%
 
ArrayList<Entree> entree1 =(ArrayList<Entree>) request.getAttribute("entrees");
if (entree1!=null){
for(Entree a : entree1) {
%>
				<tr>
					<td><%= a.getDateEntree() %></td>
					<td><%= a.getRefEntree() %></td>
					<td><%= a.getPrixTotalEntree() %></td>
				<td><a
						href="<%=application.getContextPath()%>/Details?id=<%=a.getCodeEntree()%>">
							Détails </a>
				</tr>
								<%
}
}
%>	
 
 
 
</table>
 
</table>
</form>
 
</body>
</html>
voici le code de listeentreeCtl.java (le servelet):
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
65
66
67
68
69
 
package controleur;
 
import java.io.IOException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
 
import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
 
import entity.Entree;
import session.ArticleEJBImplLocal;
 
@WebServlet(name="en",urlPatterns="/ListeEntreesCtl")
public class ListeEntreesCtl extends HttpServlet {
	private static final long serialVersionUID = 1L;
 
	private static final String Date = null;
 
	@EJB
	private ArticleEJBImplLocal imp; 
 
 
 
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 
		request.getRequestDispatcher("ListeEntrees.jsp").forward(request, response);	
	}
 
 
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		Date datedebut = null;
		Date datefin = null;
		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-mm-dd");
		if ((request.getParameter("datedebut") != null) && (!request.getParameter("datedebut").toString().isEmpty())) {
 
 
			try {
 
				datedebut = formatter.parse(request.getParameter("datedebut"));
			} catch (java.text.ParseException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
if ((request.getParameter("datefin") != null) && (!request.getParameter("datefin").toString().isEmpty())) {
 
 
			try {
 
				datefin = formatter.parse(request.getParameter("datefin"));
			} catch (java.text.ParseException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
List<Entree> entree1 = imp.RechercherParDate(datedebut, datefin);
request.setAttribute("entrees", entree1);
 
}}
		doGet(request, response);
	}
 
}
après l’exécution je n'obtient rien comme résultat