FORM avec un xhtml sous serveur Wildfly
Bonjour,
Je parviens à submit depuis un formulaire en JSP (en utilisant un appel vers une servlet), mais je n'y parviens pas en passant par un formulaire en xhtml, et c'est pourtant dans ce langage que j'en ai besoin.
Ma servlet se nomme "AddModuleExecuteServlet"
Mon form en JSP (fonctionnel) :
Code:
1 2 3 4 5 6 7 8 9 10 11
| <form method="post" action="AddModuleExecuteServlet">
Nom module :
<input type="text" name="module.nom_module"/><br/>
Intitulé du cours :
<input type="text" name="module.intitule_module"/><br/>
Nb heures cours :
<input type="text" name="module.nb_heures_cours"/><br/>
Nb heures td :
<input type="text" name="module.nb_heures_td"/><br/>
<input type="submit"/>
</form> |
Le code de mon xhtml avec mon formulaire (qui ne réagit ni dans la console du serveur, ni dans l'onglet réseau du navigateur... et qui ne submit pas donc).
Code:
1 2 3 4 5 6 7 8
| <h:form action="AddModuleExecuteServlet" method="post">
<h:outputLabel value="Nom UE : " /> <h:inputText name="module.nom_module" />
<h:outputLabel value="Intitule UE : " /> <h:inputText name="module.intitule_module" />
<h:outputLabel value="Nombre d'heures de TDs : " /> <h:inputText name="module.nb_heures_cours" />
<h:outputLabel value="Nombre d'heures de cours : " /> <h:inputText name="module.nb_heures_td" />
<input type="submit" action="AddModuleExecuteServlet" method="post" />
</div>
</h:form> |
Le soucis doit êttre tout bête... j'ai essayé un tas de manière de submit mon formulaire, je désespère : pas moyen d'appeler ma servlet.
Au passage, si besoin, le code de ma servlet (AddModuleExecuteServlet.java) :
Code:
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
|
package controleur;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
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 modele.Module;
import modele.ModuleManagerRemote;
/**
* Servlet implementation class AddContactExecuteServlet
*/
@WebServlet("/AddModuleExecuteServlet")
public class AddModuleExecuteServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Module module = new Module();
module.setnom_module(request.getParameter("module.nom_module"));
module.setintitule_module(request.getParameter("module.intitule_module"));
module.setnb_heures_cours(Integer.parseInt(request.getParameter("module.nb_heures_cours")));
module.setnb_heures_td(Integer.parseInt(request.getParameter("module.nb_heures_td")));
ModuleManagerRemote moduleManagerRemote = EjbLocator.getLocator().getModuleManager();
Module newModule = moduleManagerRemote.ajouter(module);
RequestDispatcher rd = null;
if(newModule.getid_module() > 0) {
rd = request.getRequestDispatcher("/WEB-INF/jsps/moduleAdded.jsp");
}
else {
rd = request.getRequestDispatcher("/WEB-INF/jsps/moduleNotAdded.jsp");
}
rd.forward(request, response);
}
} |
merci d'avance!