Appel d'une servlet dérrière un bouton [Résolu]

Messages postés
80
Date d'inscription
samedi 22 septembre 2007
Dernière intervention
16 mars 2011
- - Dernière réponse : mahamourta
Messages postés
86
Date d'inscription
jeudi 6 août 2009
Dernière intervention
2 septembre 2016
- 6 déc. 2009 à 22:19
Slt!
j'esaie d'appeler une servlet dérrière un bouton mais je n'y arrive pas. je voudrai qu'en cliquant sur un bouton on puisse exécuter une servlet. merci de me donner un coup de main.
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
35
Date d'inscription
lundi 23 octobre 2006
Dernière intervention
6 juin 2008
3
Merci
page jsp :

<html........

<form action="http://localhost:8080/nomAppli/NomServlet" method="post">
......

</form>
</html>

et normalemetn ta un bouton "envoi vers ervlet" qui te fai un renvoi a ta servlet

Nivraë - just her

Merci hluder 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de hluder
Messages postés
80
Date d'inscription
samedi 22 septembre 2007
Dernière intervention
16 mars 2011
0
Merci
Merci!
j'avais juste oublié cette discussion car quelques temps après l'envoie de la discussion j'avais trouvé la réponse. merci
Commenter la réponse de lovelacelana
Messages postés
86
Date d'inscription
jeudi 6 août 2009
Dernière intervention
2 septembre 2016
0
Merci
salut je suis un debutant en java.
J'ai fais un formulaire avec un bouton submit,je veux que l'orsqu'une personne appuie sur ce bouton un message soit afficher. Je ne recois aucun message a l'ecran.voici mes codes:
fichier index.jsp

<form name="momo" action=action="camarche" method= "get">
connexion

</form>

Servlet qui se nomme Test
public class Test extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException{RequestDispatcher dispatch = request.getRequestDispatcher("ok.jsp");
dispatch.forward(request, response);

fichier web.xml

<web-app>

<servlet>
<servlet-class>test.Test</servlet-class>
<servlet-name>firstServlet</servlet-name>
</servlet>

<servlet-mapping>
<servlet-name>firstServlet</servlet-name>
/camarche
</servlet-mapping>

</web-app>

j'ai creer ok.jsp
Commenter la réponse de mahamourta
Messages postés
80
Date d'inscription
samedi 22 septembre 2007
Dernière intervention
16 mars 2011
0
Merci
Bonjour,
moi j'ai un petit problème avec la manière dont tu procède je remarque que dans ton fichier index.jsp tu as mis au niveau du form action=action="camarche"

esaie déjà ça

<form name="momo" action="camarche" method="get">
connexion

</form>

je peu me tromper mais je ne pense pas que tu as bien décrite ta servlet
au niveau du request.getRequestDispatcher("ok.jsp");

quel est le contenu de ok.jsp??
Commenter la réponse de lovelacelana
Messages postés
86
Date d'inscription
jeudi 6 août 2009
Dernière intervention
2 septembre 2016
0
Merci
salut lovelacelana

merci pour ton aide.J'ai testé action="camarche" mais ça ne marche pas.Le contenu de ok.jsp est:
<%out.println("ca marche");%>.
C'est ce message qui devra s'afficher lorsqu'on appui sur le bouton.
Commenter la réponse de mahamourta
Messages postés
80
Date d'inscription
samedi 22 septembre 2007
Dernière intervention
16 mars 2011
0
Merci
Salut,
voilà ce que je te propose

fichier index.jsp

<form name="momo" action="camarche" method="get">
connexion

</form>
[u]
Servlet qui se nomme Test /u

package test;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Test extends HttpServlet {

/**
*
*/
private static final long serialVersionUID = 1L;

//Procédure INIT
public void init() {
}

//Procédure DOGET
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException,
ServletException {

getServletContext().getRequestDispatcher("ok.jsp").forward(request,response);
}

//Procédure DOPOST
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException,
ServletException {
doGet(request, response);
}
}


[u]fichier web.xml
/u
<web-app>

<servlet>
<servlet-class>test.Test</servlet-class>
<servlet-name>Test</servlet-name>
</servlet>

<servlet-mapping>
<servlet-name>Test</servlet-name>
/camarche
</servlet-mapping>

</web-app>


fichier ok.jsp
<%out.println("ca marche");%>

PS: j'espère que tu as vérifier bien que ton pachage s'appelle test??

NB: j'ai pas testé mais ça devrai marché, mais dans ce cas il t'affiche une page blanche avec le messege ça marche. si tu veux absolument un message il te faut utiliser du javascript.

Esaie et fait moi signe!
à plus
Commenter la réponse de lovelacelana
Messages postés
86
Date d'inscription
jeudi 6 août 2009
Dernière intervention
2 septembre 2016
0
Merci
salut lovelacena

j'ai essaye et ca passe , je te remercie.Je remarque que le url/pattern est essentiel dans notre fichier web.xml.J'ai une autre question ,j'ai deja essaye de me connecter a une base de donnee via une classe simple et ca marche , mais l'orsque je met le code dans ma servlet la connexion a la base de donnee ne passe paset le code de erreur.jsp est affiche(erreur):

[u]servlet Test
/u
package test;


import java.io.IOException;
import java.sql.*;


import javax.servlet.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Test extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException{





try
{
Class.forName("org.gjt.mm.mysql.Driver");
String url = "jdbc:mysql://localhost/eleve";
String utilisateur = "root";
String motdepasse = "";
Connection con = DriverManager.getConnection(url,utilisateur,motdepasse);

RequestDispatcher dispatch = request.getRequestDispatcher("ok.jsp");
dispatch.forward(request, response);
}

catch (Exception e1)
{
RequestDispatcher dispatch = request.getRequestDispatcher("erreur.jsp");
dispatch.forward(request, response);
}
}}

Merci pour ton aide
Commenter la réponse de mahamourta
Messages postés
80
Date d'inscription
samedi 22 septembre 2007
Dernière intervention
16 mars 2011
0
Merci
Essaie de récupérer l'erreur qu'il renvoi ça aiderai à recoudre le problème plus vite. et à la place de

RequestDispatcher dispatch = request.getRequestDispatcher("ok.jsp");
dispatch.forward(request, response);

essaie un peu

getServletContext().getRequestDispatcher("/ok.jsp").forward(request,response);

de même aussi pour

RequestDispatcher dispatch = request.getRequestDispatcher("erreur.jsp");
dispatch.forward(request, response);

par

getServletContext().getRequestDispatcher("/erreur.jsp").forward(request,response);
Commenter la réponse de lovelacelana
Messages postés
86
Date d'inscription
jeudi 6 août 2009
Dernière intervention
2 septembre 2016
0
Merci
merci lovelacena , j'ai trouvé la réponse: ce n'était pas au niveau de getdispatcher() mais je n'avais pas mis mon fichier jar dans le dossier lib qui se situe dans le dossier web-inf de mon projet.Est ce ke quelqu'un pourrais m'éclaircir sur la methode setattribute()?.J'ai un peu de mal a comprendre. Merci Beaucoup.
Commenter la réponse de mahamourta

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.