Ismail Amessegher
Ismail Amessegher

Reputation: 21

Hidden form in JSP/Servlet

I want to get parameters from my jsp to my servelet. so i used input form and it works for the name and the last name but it doesn't work for my ID. Here is the code of my JSP:

<tr>
                <td><form method="post" action="ServBddInsa">
                    <input type="hidden" name="id" id="id" value="testId"/>
                    <c:out value="${ utilisateur.id }" />
                    </form>
                </td>                                                           
                <td><c:out value="${ utilisateur.prenom }" /></td>
                <td><c:out value="${ utilisateur.nom }" /></td>
                <td><form method="post" action="ServBddInsa">                   
                        <p>                         
                            <label for="prenom"> Prenom :</label> <input type="text"
                                id="prenom" name="prenom" />                                                
                            <label for="nom"> Nom :</label> <input type="text" id="nom"
                                name="nom" />
                        </p>
                        <input type="submit" name="editer" value="editer" />

                    </form></td>
            </tr>
        </c:forEach>

and this of my servlet:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        BddInsa listU = new BddInsa();
        request.setAttribute("utilisateur", listU.recupererList());
        this.getServletContext().getRequestDispatcher("/WEB-INF/bddinsa.jsp").forward(request, response);


    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {      
        Utilisateur utilisateurs = new Utilisateur();
        utilisateurs.setNom(request.getParameter("nom"));
        utilisateurs.setPrenom(request.getParameter("prenom"));     
        utilisateurs.setId(request.getParameter("id"));             
        System.out.println(utilisateurs.getPrenom());
        System.out.println(utilisateurs.getNom());
        System.out.println(utilisateurs.getId());
        BddInsa listU = new BddInsa();
        listU.Editer(utilisateurs);     
        request.setAttribute("utilisateurs", listU.recupererList());
        this.getServletContext().getRequestDispatcher("/WEB-INF/bddinsa.jsp").forward(request, response);

    }


}

I get NULL when I try to see the value of id

Thank you for your help !

Upvotes: 2

Views: 682

Answers (1)

Level_Up
Level_Up

Reputation: 824

Please can you try to use only one open and one close form tag? I think you problem is because you have two <form method="post" action="ServBddInsa"> . So the submit button is on the second form. In this case the hidden field of the first form is not considered and it is not sent.

Upvotes: 3

Related Questions