IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

Traitement dans Servlet problème dans jsp après forward


Sujet :

Servlets/JSP Java

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2009
    Messages : 132
    Points : 83
    Points
    83
    Par défaut Traitement dans Servlet problème dans jsp après forward
    Bonjour à tous,

    je suis occupé à faire un formulaire qui permet de modifier un utilisateur.
    le principe est le suivant :

    une page jsp: qui reprend une liste déroulante, on choisi l'utilisateur à modifier, cela part dans la servlet qui modifie un boolean et re forward sur la page jsp, qui alors fait apparaitre les champs du formulaire prés remplis avec les données de l'utilisateur ainsi qu'un bouton modifier.

    jusque là tout va bien, mais quand on appuis sur modifier on repart sur la servlet qui dois alors envoyer au dao pour mise à jour en db et la plantage

    je cherche depuis hier je vois le problème, mais je ne comprend pas pourquoi

    voici l'erreur :

    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
    70
    71
    72
    73
     
    20-avr.-2011 22:20:42 org.apache.catalina.core.ApplicationDispatcher invoke
    GRAVE: "Servlet.service()" pour la servlet jsp a lancé une exception
    java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    	at java.util.ArrayList.RangeCheck(Unknown Source)
    	at java.util.ArrayList.get(Unknown Source)
    	at org.apache.jsp.jsp.backEnd.ManageUser_jsp._jspService(ManageUser_jsp.java:229)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
    	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)
    	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
    	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471)
    	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
    	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
    	at be.festiwavre.rl.servlets.ModifUser.doPost(ModifUser.java:103)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:395)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:250)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    20-avr.-2011 22:20:42 org.apache.catalina.core.StandardWrapperValve invoke
    GRAVE: Servlet.service() for servlet [ModifUser] in context with path [/FestiWavre] threw exception [java.lang.IndexOutOfBoundsException: Index: 0, Size: 0] with root cause
    java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    	at java.util.ArrayList.RangeCheck(Unknown Source)
    	at java.util.ArrayList.get(Unknown Source)
    	at org.apache.jsp.jsp.backEnd.ManageUser_jsp._jspService(ManageUser_jsp.java:229)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
    	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)
    	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
    	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471)
    	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)
    	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)
    	at be.festiwavre.rl.servlets.ModifUser.doPost(ModifUser.java:103)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:395)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:250)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    voici la 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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <%@page import="be.festiwavre.model.rl.modifUsers.ModifUsersModel"%>
    <%@page import="be.festiwavre.dao.rl.modifUsersForm.ModifUserDAOMySqlImpl"%>
    <%@page import="be.festiwavre.dao.rl.modifUsersForm.ModifUserDAO"%>
    <%@page import="be.festiwavre.dao.rl.modifUsersForm.ModifUserTo"%>
    <%@page import="be.festiwavre.dao.rl.addUsersForm.AddUserTo"%>
    <%@page import="be.festiwavre.dao.rl.addUsersForm.AddUserDAOMySqlImpl"%>
    <%@page import="java.util.List"%>
    <%@page import="be.festiwavre.dao.rl.addUsersForm.AddUserDAO"%>
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Festi_Wavre : Logiciel de gestion d'évènement "Gestion des utilisateurs"</title>
     
        <meta http-equiv="keywords" content="Festivité, Evènement, Wavre" />
        <meta http-equiv="description" content="Festi_Wavre : Gestion des évènement de la Ville de Wavre" />
        <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
        <meta http-equiv="author" content="Rudy Lemaitre - 2011" />
     
    	<link rel="stylesheet" type="text/css" href="../../css/manageUsers_rl.css" />
     
    	<%
            //Vérification de la session si elle existe si pas on renvoie sur la page d'accueil
            if((session.getAttribute("login") == null)  || (!session.getAttribute("typeUser").equals("Administrateur"))) {
                    response.sendRedirect("../../index.jsp");
            }
            %>
     
    </head>
    <body>
    	<h1>Gestion des utilisateurs</h1>
     
    	<!-- Ajout d'un nouvelle utilisateur -->
    	<form name="form_add_user" id="form_add_user" action="<%=request.getContextPath()%>/AddUser" method="post">
    		<fieldset>
    			<legend>
    				Ajouter un utilisateur
    			</legend>
    			<p>
    				<label>
    					Nom :
    				</label>
    				<input type="text" title="Entrer le nom de l'utilisateur" name="new_lastname" id="form_new_lastname" /><span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Prénom :
    				</label>
    				<input type="text" title="Entrer le prénom de l'utilisateur" name="new_firstname" id="form_new_firstname" /> <span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Login de connexion :
    				</label>
    				<input type="text" title="Entrer le login de l'utilisateur" name="new_login" id="form_new_login" /> <span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Mot de passe :
    				</label>
    				<input type="password" title="Entrer le mot de passe de l'utilisateur" name="new_password" id="form_new_password" /> <span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Type d'utilisateur :
    				</label>
    				<select name="new_type_user" id="form_new_type_user" title="Faite votre choix" size="1">
    					<!--On rend le premier champ vide -->
    					<option value="">Type</option>
    					<% 
                                            List<AddUserTo> loadListeTypeUserToAdd;
                                            AddUserDAO loadTypeUserToAdd = new AddUserDAOMySqlImpl();
                                            //Exécution de la requete pour chargement de la liste
                                            loadListeTypeUserToAdd=loadTypeUserToAdd.returnTypeUser();
                                            //On boucle pour remplir les champs
                                            for (int i=0; i<loadListeTypeUserToAdd.size();i++){
                                            %>
    						<option value="<%=loadListeTypeUserToAdd.get(i).getIdTypeUser()%>"><%=loadListeTypeUserToAdd.get(i).getTypeUser()%></option>
    					<%
                                            }
                                            %>			 
    				</select> <span class="obligation"> *</span>
    			</p>
    			<p>
    			<input type="submit" title="Ajouter le nouvel utilisateur" value="Ajouter" />
    			</p>
    			<p>
    				<i>Les champs marqués d'un <span class="obligation">*</span> sont obligatoires.</i>
    			</p>
    		</fieldset>
    	</form>
     
    	<!-- Modification d'un utilisateur -->
    	<form name="modif_add_user" id="modif_add_user" action="<%=request.getContextPath()%>/ModifUser" method="post">
    		<fieldset>
    			<legend>
    				Modification d'un utilisateur
    			</legend>
    			<%                      
                            if (ModifUsersModel.displayList){                               
                            %>
    			<p>
    				<label>
    					Nom :
    				</label>
    				<select name="modif_user" id="form_modif_user" title="Faite votre choix" size="1" onchange="submit()">
    					<!--On rend le premier champ vide -->
    					<option value="">Utilisateur</option>
    					<%
                                            List<ModifUserTo> loadListeAllUserForModif;
                                            ModifUserDAO LoadListeUsers = new ModifUserDAOMySqlImpl();
                                            //Exécution de la requete pour chargemnet des utilisateur
                                            loadListeAllUserForModif = LoadListeUsers.returnListUsers();
                                            //On boucle pour remplir les champs
                                            for (int i=0; i<loadListeAllUserForModif.size(); i++)
                                            {
                                            %>
    					<option value="<%=loadListeAllUserForModif.get(i).getIdUser()%>"><%=loadListeAllUserForModif.get(i).getLastNameUser()%> <%=loadListeAllUserForModif.get(i).getFirstNameUser()%></option>
    					<%
                                            }
                                            %>
    				</select>
    			</p>
    			<%} %>
    			<%
                            if (ModifUsersModel.display){ 
                                    //on appel la méthode pour récuper les champs par rapport au choix utilisateur précédent et on garnis le formulaire
                                    List<ModifUserTo> user =  new ModifUsersModel().ReturnUserById(request.getParameter("modif_user"));
                            %>
    			<p>
    				<label>
    					Nom :
    				</label>
    				<input type="text" value="<%=user.get(0).getLastNameUser()%>" title="Entrer le nom de l'utilisateur" name="modif_lastname" id="form_modif_lastname" /><span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Prénom :
    				</label>
    				<input type="text" value="<%=user.get(0).getFirstNameUser()%>" title="Entrer le prénom de l'utilisateur" name="modif_firstname" id="form_modif_firstname" /> <span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Login de connexion :
    				</label>
    				<input type="text" value="<%=user.get(0).getLoginUser()%>" title="Entrer le login de l'utilisateur" name="modif_login" id="form_modif_login" /> <span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Mot de passe :
    				</label>
    				<input type="password" value="<%=user.get(0).getPasswordUser()%>" title="Entrer le mot de passe de l'utilisateur" name="modif_password" id="form_modif_password" /> <span class="obligation"> *</span>
    			</p>
    			<p>
    				<label>
    					Type d'utilisateur :
    				</label>
    				<select name="modif_type_user" id="form_modif_type_user" title="Faite votre choix" size="1">
    					<!--On rend le premier champ vide -->
    					<option value="">Type</option>
    					<% 
                                            //On boucle pour remplir les champs
                                            for (int i=0; i<loadListeTypeUserToAdd.size();i++){
                                            %>
     
    							<option value="<%=loadListeTypeUserToAdd.get(i).getIdTypeUser()%>"><%=loadListeTypeUserToAdd.get(i).getTypeUser()%></option>
     
    					<%}
                                            %>			
    				</select> <span class="obligation"> *</span>
    			</p>	
    			<p>
    			<input type="submit" title="Modifier l'utilisateur" value="Modifier" />
    			</p>
    			<p>
    				<i>Les champs marqués d'un <span class="obligation">*</span> sont obligatoires.</i>
    			</p>
    			<%} %>
    		</fieldset>
    	</form>
     
    	<!-- Supprimer un utilisateur -->
    	<form action="DelUser" method="post">
    		<fieldset>
    			<legend>
    				 Supprimer un utilisateur
    			</legend>
    			<p>
    				<label>
    					Nom :
    				</label>
    				<select name="del_user" id="form_del_user" title="Faite votre choix" size="1">
    					<!--On rend le premier champ vide -->
    					<option value="">Utilisateur</option>
    					<%
                                            List<ModifUserTo> loadListeAllUserForModif;
                                            ModifUserDAO LoadListeUsers = new ModifUserDAOMySqlImpl();
                                            //Exécution de la requete pour chargemnet des utilisateur
                                            loadListeAllUserForModif = LoadListeUsers.returnListUsers();
                                            //On boucle pour remplir les champs
                                            for (int i=0; i<loadListeAllUserForModif.size(); i++)
                                            {
                                            %>
    					<option value="<%=loadListeAllUserForModif.get(i).getIdUser()%>"><%=loadListeAllUserForModif.get(i).getLastNameUser()%> <%=loadListeAllUserForModif.get(i).getFirstNameUser()%></option>
    					<%
                                            }
                                            %>
    				</select>
    			</p>
    			<p>
    			<input type="button" title="Supprimer l'utilisateur" value="Supprimer" />
    			</p>
    		</fieldset>
    	</form>
    	<jsp:include page="/comp/footer.rl.comp"></jsp:include>
     
    </body>
    </html>
    voici la 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
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    package be.festiwavre.rl.servlets;
     
    import java.io.IOException;
    import java.io.PrintWriter;
     
    import javax.servlet.RequestDispatcher;
    import javax.servlet.ServletConfig;
    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 javax.servlet.http.HttpSession;
     
    import org.apache.log4j.Logger;
     
    import be.festiwavre.model.rl.modifUsers.ModifUsersModel;
     
    /**
     * Servlet de gestion des utilisateurs Contrôle pour la modification d'un
     * utilisateur
     * 
     * @author Rudy Lemaitre
     */
    @WebServlet("/ModifUser")
    public class ModifUser extends HttpServlet {
    	private static final long	serialVersionUID	= 1L;
     
    	/**
    	 * Constructeur par défaut
    	 * 
    	 * @author Rudy Lemaitre
    	 */
    	public ModifUser() {
    		super();
    	}
     
    	/**
    	 * mise en service du logger
    	 */
    	private static final Logger	log	= Logger.getLogger(ModifUser.class);
     
    	/**
    	 * Méthode appelée par le conteneur à chaque instanciation de la servlet
    	 * 
    	 * @author Rudy Lemaitre
    	 */
    	public void init(ServletConfig config) throws ServletException {
    	}
     
    	/**
    	 * @see Servlet#destroy()
    	 * @author Rudy Lemaitre
    	 */
    	public void destroy() {
    	}
     
    	/**
    	 * Méthode doGet
    	 * 
    	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
    	 *      response)
    	 * @throws ServletException
    	 *             , IOException
    	 * @author Rudy Lemaitre
    	 */
    	protected void doGet(HttpServletRequest request,
    			HttpServletResponse response) throws ServletException, IOException {
    		response.setContentType("text/html");
    		PrintWriter out = response.getWriter();
    		out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
    		out.println("<HTML>");
    		out.println("  <HEAD><TITLE>Contrôle d'accès</TITLE></HEAD>");
    		out.println("  <BODY>");
    		out.println("  <BR />Pour visualiser les pages, veuillez passer par la page de connexion de la plateforme.");
    		out.println("  <A HREF='/FestiWavre/index.jsp'>Me connecter</A>");
    		out.println("  </BODY>");
    		out.println("</HTML>");
    		out.flush();
    		out.close();
    	}
     
    	/**
    	 * Méthode doPost
    	 * 
    	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
    	 *      response)
    	 * @author Rudy Lemaitre
    	 */
    	protected void doPost(HttpServletRequest request,
    			HttpServletResponse response) throws ServletException, IOException {
    		if (request.getParameter("modif_user") != "") {			
    			// on modifie la variable pour permettre l'affichage à true dans la
    			// jsp
    			ModifUsersModel display = new ModifUsersModel();
    			// affichage du formulaire
    			display.DisplayFormModification(true);
    			// caché liste déroulante
    			display.DisplayList(false);
    			// on renvoie vers la jsp pour affichage du menu
    			RequestDispatcher pageforward = request
    					.getRequestDispatcher("jsp/backEnd/ManageUser.jsp");
    			pageforward.forward(request, response);
    			// on remet la variable à l'origine pour la prochaine utilisation
    			//display.DisplayFormModification(false);
    			//display.DisplayList(true);
     
    			log.debug("Changement du status disable vers enable");
    		}
    		else {
    			response.setContentType("text/html");
    			PrintWriter out = response.getWriter();
    			out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
    			out.println("<HTML>");
    			out.println("  <HEAD><TITLE>Contrôle des champs</TITLE></HEAD>");
    			out.println(" <meta http-equiv=\"refresh\" content=\"2;url=jsp/backEnd/ManageUser.jsp\" />");
    			out.println("  <BODY>");
    			out.println("  <BR /><h1><center>Vous devez choisir un utilisateur à modifier !</center></h1>");
    			out.println("  </BODY>");
    			out.println("</HTML>");
    			out.flush();
    			out.close();
    		}
    		System.out.println(request.getParameter("modif_user"));
     
    	}
     
    }
    voici la classe model :
    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
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    /**
     * 
     */
    package be.festiwavre.model.rl.modifUsers;
     
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.List;
     
    import org.apache.log4j.Logger;
     
    import be.festiwavre.dao.rl.addUsers.AddUsersDbDAO;
    import be.festiwavre.dao.rl.addUsers.AddUsersDbDAOMySqlImpl;
    import be.festiwavre.dao.rl.modifUsers.ModifUsersDbDAO;
    import be.festiwavre.dao.rl.modifUsers.ModifUsersDbDAOMySqlImpl;
    import be.festiwavre.dao.rl.modifUsersForm.ModifUserDAO;
    import be.festiwavre.dao.rl.modifUsersForm.ModifUserDAOMySqlImpl;
    import be.festiwavre.dao.rl.modifUsersForm.ModifUserTo;
    import be.festiwavre.model.rl.checkUsers.CheckUsersModel;
     
    /**
     * Classe model pour la pour la modification d'un utilisateur
     * 
     * @author Rudy Lemaitre
     * 
     */
    public class ModifUsersModel {
     
    	public static boolean	display		= false;
    	public static boolean	displayList	= true;
     
    	/**
    	 * Constructeur
    	 * 
    	 * @author Rudy Lemaitre
    	 */
    	public ModifUsersModel() {
    		super();
    	}
     
    	/**
    	 * mise en service du logger
    	 */
    	private static final Logger	log	= Logger.getLogger(ModifUsersModel.class);
     
    	/**
    	 * Classe qui appel le DAO pour ajouter un nouvelle utilisateur en db
    	 * 
    	 * @param typeUser
    	 * @param lastName
    	 * @param firstName
    	 * @param login
    	 * @param passwordUser
    	 * @param idUser
    	 * @return boolean
    	 * @author Rudy Lemaitre
    	 */
    	public boolean modifUser(String typeUser, String lastName,
    			String firstName, String login, String passwordUser, String idUser) {
     
    		ModifUsersDbDAO modifUser = new ModifUsersDbDAOMySqlImpl();
     
    		boolean validation = false;
     
    		try {
    			validation = modifUser.modifNewUser(typeUser, lastName, firstName,
    					login, passwordUser, idUser);
    			log.debug("opération réussi");
    		}
    		catch (SQLException e) {
    			System.out.println(e);
    			e.printStackTrace();
    		}
     
    		return validation;
    	}
     
    	/**
    	 * Méthode retournant les informations d'un utilisateur en lui passant un id
    	 * user
    	 * 
    	 * @param idUser
    	 * @return
    	 * @author Rudy Lemaitre
    	 */
    	public List<ModifUserTo> ReturnUserById(String idUser) {
     
    		List<ModifUserTo> loadUserById;
    		ModifUserDAO userById = new ModifUserDAOMySqlImpl();
    		// Exécution de la requete pour avoir l'utilisateur afin d'allimenter
    		// les champs
    		loadUserById = userById.returnUserById(idUser);
    		return loadUserById;
    	}
     
    	/**
    	 * Méthode pour l'affichage des champs du formulaire de modification
    	 * d'utilisateur
    	 * 
    	 * @author Rudy Lemaitre
    	 */
    	public void DisplayFormModification(boolean inDisplay) {
    		display = inDisplay;
     
    	}
     
    	/**
    	 * Méthode pour caché la liste déroulante après validation du formulaire
    	 * d'utilisateur
    	 * 
    	 * @author Rudy Lemaitre
    	 */
    	public void DisplayList(boolean inDisplay) {
    		displayList = inDisplay;
     
    	}
    }
    pour l'instant c'est du basic : jsp to servlet et servelt to jsp pour après revenir à jsp to servlet.

    le problème vien de mes champs value de pré remplissage dans la servlet, j'arrive bien à récupérer et à afficher, mais quand je re post dans la servlet les donnée via le bouton alors msg d'erreur

    je continue à chercher mais si vous avez une piste cela va m'aider au niveau de mon timming

    je sais que je dois utiliser des uses bean que je suis pas très MVC dans ce modèle, mais par manque de temps pour rendre le projet et surtout que je dois apprendre le langage par moi même, cela sera pour après dans la prochaine évolution du projet

    encore merci pour votre aide

    Rudy

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Quand tu fais, il faut être sûr que la liste contient au moins 1 élément, ce que tu n'as pas fait

    Si tu veux savoir exactement à quoi correspond la ligne
    ManageUser_jsp.java:229
    et si tu utilises Tomcat (ou JBoss), tu peux regarder dans le répertoire work du serveur le source correspondant à la page JSP.

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2009
    Messages : 132
    Points : 83
    Points
    83
    Par défaut
    Citation Envoyé par OButterlin Voir le message
    Quand tu fais, il faut être sûr que la liste contient au moins 1 élément, ce que tu n'as pas fait

    Si tu veux savoir exactement à quoi correspond la ligne et si tu utilises Tomcat (ou JBoss), tu peux regarder dans le répertoire work du serveur le source correspondant à la page JSP.
    ok merci je vais regarder .

    mais pourquoi au premier passage je n'ai pas de problème il va bien chercher les infos en db pour garnir les champs et c'est quand je veux récupérer les champs garnis pour un update en db lors du re post que j'ai le problème

    est ce du au fait que je fait un requestDispatcher ? car pour le css il le perd donc je me dit peux être qu'il perd aussi quelque chose

    je suis dessus depuis le matin encore et franchement je comprend pas

  4. #4
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2009
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2009
    Messages : 132
    Points : 83
    Points
    83
    Par défaut
    j'ai trouver

    quand je reposte j'ai mon modif_user qui est vide car non générer au deuxième passage

    je vais modifier cela

    encore merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/07/2012, 13h42
  2. Réponses: 5
    Dernier message: 10/06/2010, 16h45
  3. Réponses: 1
    Dernier message: 19/04/2010, 13h04
  4. Problème dans l'affichage dans un reportViewer
    Par chebmo90 dans le forum Windows Forms
    Réponses: 0
    Dernier message: 26/08/2009, 09h43
  5. [WD11] probléme dans la sélection dans une requête
    Par dj_techno dans le forum WinDev
    Réponses: 2
    Dernier message: 20/02/2009, 08h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo