je crois qu l'avais la tete ailleur quand j'ai écrit mon code :bug:
en tout cas pour le code exemple voici la jsp
<%@ page language="java" pageEncoding="ISO-8859-1" contentType="text/html;charset=ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<title>Rapport -- </title>
<script type="text/JavaScript">
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
</script>
</head>
<body>
<h2>DailyReports</h2>
<hr>
<p>
Date début
<form method="get">
<select name="menu1" size="1">
<option value="0">Days</option>
<option value="1">jour1</option>
<option value="2">jour2</option>
<option value="3">jour3</option>
</select>
Date fin
<select name="menu2" size="1">
<option value="0" selected>Days</option>
<option value="1">jour1</option>
<option value="2">jour2</option>
<option value="3">jour3</option>
</select>
</p>
<br>
<input type="radio" name="radio" value="radio1"/>période
<br>
<input type="radio" name="radio" value="radiob2"/>jours
<br>
<input type="submit" value="Envoyer">
<input type="hidden" name="action" value="/Edit">
</form>
<!-- <a href="<c:url value="/do/Edit"/>">envoyer</a> -->
</body>
</html>
et pour ma servlet
import java.io.IOException;
import java.util.HashMap;
import java.util.*;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@SuppressWarnings("serial")
public class Application extends HttpServlet {
private String []paramètres = {"urlDaily","urlEdit"};
private Map params = new HashMap<String, String>();
// init
@SuppressWarnings("unchecked")
public void init() throws ServletException {
// on récupère les paramètres d'initialisation de la servlet
ServletConfig config = getServletConfig();
// on traite les autres paramètres d'initialisation
String valeur = null;
for (int i=0;i<paramètres.length;i++){
// valeur du paramètre
valeur = config.getInitParameter(paramètres[i]);
// on mémorise la valeur du paramètre
params.put(paramètres[i], valeur);
}
}
// GET
@SuppressWarnings("unchecked")
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
// on récupère la méthode d'envoi de la requête
String méthode = request.getMethod().toLowerCase();
// on récupère l'action à exécuter
String action=request.getParameter("action");
// action ?
if (action == null) {
action = "/DailyReports";
}
// exécution action
if (méthode.equals("get") && action.equals("/DailyReports")) {
doListDaily(request, response);
return;
}
if (méthode.equals("get") && action.equals("/Edit")) {
doEdit(request, response);
return;
}
}
private void doListDaily(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
getServletContext()
.getRequestDispatcher((String) params.get("urlDaily")).forward(request, response);
}
// affichge date et DailyReports
private void doEdit(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String dt1 = request.getParameter("menu1");
String dt2 = request.getParameter("menu2");
String radio = request.getParameter("radio");
request.setAttribute("dt1", dt1);
request.setAttribute("dt2", dt2);
request.setAttribute("radio", radio);
getServletContext()
.getRequestDispatcher((String) params.get("urlEdit")).forward(request, response);
}
// post
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
// on passe la main au GET
doGet(request, response); }
}
:)
mais pour le cas d'un combobox dont la taille n'est pas connu comment récupérer la valeur sélectionnée :?
<select name= menu1 size="1">
<option>Days</option>
<c:forEach var="varia" items="${ListeDate}">
<option><c:out value="${varia.date}"/></option>
</c:forEach>
je crois qu l'avais la tete ailleur quand j'ai écrit mon code :bug:
en tout cas pour le code exemple voici la jsp
<%@ page language="java" pageEncoding="ISO-8859-1" contentType="text/html;charset=ISO-8859-1"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <html> <head> <title>Rapport -- </title> <script type="text/JavaScript"> function MM_jumpMenu(targ,selObj,restore){ //v3.0 eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0; } </script> </head> <body> <h2>DailyReports</h2> <hr> <p> Date début <form method="get"> <select name="menu1" size="1"> <option value="0">Days</option> <option value="1">jour1</option> <option value="2">jour2</option> <option value="3">jour3</option> </select> Date fin <select name="menu2" size="1"> <option value="0" selected>Days</option> <option value="1">jour1</option> <option value="2">jour2</option> <option value="3">jour3</option> </select> </p> <br> <input type="radio" name="radio" value="radio1"/>période <br> <input type="radio" name="radio" value="radiob2"/>jours <br> <input type="submit" value="Envoyer"> <input type="hidden" name="action" value="/Edit"> </form> <!-- <a href="<c:url value="/do/Edit"/>">envoyer</a> --> </body> </html>et pour ma servlet
import java.io.IOException; import java.util.HashMap; import java.util.*; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @SuppressWarnings("serial") public class Application extends HttpServlet { private String []paramètres = {"urlDaily","urlEdit"}; private Map params = new HashMap<String, String>(); // init @SuppressWarnings("unchecked") public void init() throws ServletException { // on récupère les paramètres d'initialisation de la servlet ServletConfig config = getServletConfig(); // on traite les autres paramètres d'initialisation String valeur = null; for (int i=0;i<paramètres.length;i++){ // valeur du paramètre valeur = config.getInitParameter(paramètres[i]); // on mémorise la valeur du paramètre params.put(paramètres[i], valeur); } } // GET @SuppressWarnings("unchecked") public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // on récupère la méthode d'envoi de la requête String méthode = request.getMethod().toLowerCase(); // on récupère l'action à exécuter String action=request.getParameter("action"); // action ? if (action == null) { action = "/DailyReports"; } // exécution action if (méthode.equals("get") && action.equals("/DailyReports")) { doListDaily(request, response); return; } if (méthode.equals("get") && action.equals("/Edit")) { doEdit(request, response); return; } } private void doListDaily(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { getServletContext() .getRequestDispatcher((String) params.get("urlDaily")).forward(request, response); } // affichge date et DailyReports private void doEdit(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String dt1 = request.getParameter("menu1"); String dt2 = request.getParameter("menu2"); String radio = request.getParameter("radio"); request.setAttribute("dt1", dt1); request.setAttribute("dt2", dt2); request.setAttribute("radio", radio); getServletContext() .getRequestDispatcher((String) params.get("urlEdit")).forward(request, response); } // post public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { // on passe la main au GET doGet(request, response); } }:)
mais pour le cas d'un combobox dont la taille n'est pas connu comment récupérer la valeur sélectionnée :?
<select name= menu1 size="1"> <option>Days</option> <c:forEach var="varia" items="${ListeDate}"> <option><c:out value="${varia.date}"/></option> </c:forEach>