Servlet,jsp,html
hey
-
BadGuitarist Messages postés 367 Date d'inscription Statut Membre Dernière intervention -
BadGuitarist Messages postés 367 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je fais une appli web av tomcat.
J'ai un formulaire avec une methode post, et qui actionne un servlet mais sa ne fonctionne pas trés bien.
En admettant que je laisse le champ vide, quand je clique sur envoyer je devrais avoir le message d'erreur du jsp
voici le code html:
<form method="post" action="/projet/WEB-INF/classes/IdentificationServlet/">
<TABLE BORDER=0>
<tr>
<td>Nom</td>
<td>
<INPUT type=text name="nomUtilisateur">
</td>
</tr>
<INPUT type="submit" value="Envoyer">
</form>
le code de la servlet:
public class IdentificationServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException
{
response.sendRedirect("/projet/index.html");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException
{
String nomUtilisateur= request.getParameter("nomUtilisateur");
if(nomUtilisateur.length()==0)
{
request.setAttribute("erreur","le nom d'utilisateur n'a pas été renseigné !");
getServletContext().getRequestDispatcher("/jsp/erreur.jsp").forward(request,response);
}
}
erreur.jsp:
<html>
<body>
<h1> Erreur d'identification </h1>
<%=request.getAttribute("erreur") %>
</body>
</html>
le web.xml:
<servlet>
<servlet-name>IdentificationServlet</servlet-name>
<servlet-class>IdentificationServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>IdentificationServlet</servlet-name>
<url-pattern>/servlet/IdentificationServlet</url-pattern>
</servlet-mapping>
Quand j'execute sa me met erreur 404....
Help me please!!
merci
Je fais une appli web av tomcat.
J'ai un formulaire avec une methode post, et qui actionne un servlet mais sa ne fonctionne pas trés bien.
En admettant que je laisse le champ vide, quand je clique sur envoyer je devrais avoir le message d'erreur du jsp
voici le code html:
<form method="post" action="/projet/WEB-INF/classes/IdentificationServlet/">
<TABLE BORDER=0>
<tr>
<td>Nom</td>
<td>
<INPUT type=text name="nomUtilisateur">
</td>
</tr>
<INPUT type="submit" value="Envoyer">
</form>
le code de la servlet:
public class IdentificationServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException
{
response.sendRedirect("/projet/index.html");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException
{
String nomUtilisateur= request.getParameter("nomUtilisateur");
if(nomUtilisateur.length()==0)
{
request.setAttribute("erreur","le nom d'utilisateur n'a pas été renseigné !");
getServletContext().getRequestDispatcher("/jsp/erreur.jsp").forward(request,response);
}
}
erreur.jsp:
<html>
<body>
<h1> Erreur d'identification </h1>
<%=request.getAttribute("erreur") %>
</body>
</html>
le web.xml:
<servlet>
<servlet-name>IdentificationServlet</servlet-name>
<servlet-class>IdentificationServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>IdentificationServlet</servlet-name>
<url-pattern>/servlet/IdentificationServlet</url-pattern>
</servlet-mapping>
Quand j'execute sa me met erreur 404....
Help me please!!
merci
A voir également:
- Servlet,jsp,html
- Editeur html - Télécharger - HTML
- Espace html ✓ - Forum HTML
- [**] Balise pour un espace vide en hml. Merci ✓ - Forum Webmastering
- Html download - Télécharger - HTML
- /Var/www/html/index.html ✓ - Forum Linux / Unix
3 réponses
Bonjoiur Hey,
Essaie cela :
D'autre part, as-tu vérifié si ta servlet était bien configurée en la lançant directement dans ton navigateur (sans passer par ton application) : faire un truc du genre :
http://127.0.0.1/tonSiteWeb/servlet/IdentificationServlet
Si ta servlet est bien configurée, tu devrais obtenir ta page d'erreur.
Essaie cela :
if(nomUtilisateur==null || nomUtilisateur.length()==0) { request.setAttribute("erreur","le nom d'utilisateur n'a pas été renseigné !"); RequestDispatcher rd = getServletContext().getRequestDispatcher("/jsp/erreur.jsp"); rd.forward(request,response); }
D'autre part, as-tu vérifié si ta servlet était bien configurée en la lançant directement dans ton navigateur (sans passer par ton application) : faire un truc du genre :
http://127.0.0.1/tonSiteWeb/servlet/IdentificationServlet
Si ta servlet est bien configurée, tu devrais obtenir ta page d'erreur.
j'arrive meme pas a voir si ma servlet est bien configurée^^ je te donne larchitecture de l'appli:
apache6.0
|->webapps
|->projet
Dans projet il y a un repertoire jsp, un repertoire WEB-INF, et un fichier index.html
Est ce que l'erreur ne viendrait elle^pas du chemin dans le formulaire apré action="..." ?!
apache6.0
|->webapps
|->projet
Dans projet il y a un repertoire jsp, un repertoire WEB-INF, et un fichier index.html
Est ce que l'erreur ne viendrait elle^pas du chemin dans le formulaire apré action="..." ?!
Hey,
Tu vas légèrement changer le code de ta servlet pour vérifier si c'est la recherche de ta jsp erreur.jsp qui pose problème :
Cela permet déjà de vérifier la config de ta servlet.
Remarque : d'après ta config, ta servlet ne fait pas partie d'un package.
Tu vas légèrement changer le code de ta servlet pour vérifier si c'est la recherche de ta jsp erreur.jsp qui pose problème :
import java.io.PrintWriter; import javax.servlet.*; import javax.servlet.http.*; public class IdentificationServlet extends HttpServlet { private static final String CONTENT_TYPE = "text/html; charset=windows-1252"; public void init(ServletConfig config) throws ServletException { super.init(config); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { response.sendRedirect("/projet/index.html"); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { String nomUtilisateur= request.getParameter("nomUtilisateur"); response.setContentType(CONTENT_TYPE); PrintWriter out = response.getWriter(); out.println("<br>"); if(nomUtilisateur==null || nomUtilisateur.length()==0) out.println("<h1>Utilisateur non connecté.</h1>"); else out.println("<h1>Utilisateur "+nomUtilisateur+" connecté.</h1>"); out.close(); } }
Cela permet déjà de vérifier la config de ta servlet.
Remarque : d'après ta config, ta servlet ne fait pas partie d'un package.