Appel d'une servlet dérrière un bouton

Résolu
lovelacelana Messages postés 80 Date d'inscription samedi 22 septembre 2007 Statut Membre Dernière intervention 16 mars 2011 - 28 mars 2008 à 08:03
mahamourta Messages postés 85 Date d'inscription jeudi 6 août 2009 Statut Membre 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.

9 réponses

hluder Messages postés 35 Date d'inscription lundi 23 octobre 2006 Statut Membre Dernière intervention 6 juin 2008
14 avril 2008 à 16:30
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
3
lovelacelana Messages postés 80 Date d'inscription samedi 22 septembre 2007 Statut Membre Dernière intervention 16 mars 2011
15 avril 2008 à 08:40
Merci!
j'avais juste oublié cette discussion car quelques temps après l'envoie de la discussion j'avais trouvé la réponse. merci
0
mahamourta Messages postés 85 Date d'inscription jeudi 6 août 2009 Statut Membre Dernière intervention 2 septembre 2016
2 déc. 2009 à 01:07
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
0
lovelacelana Messages postés 80 Date d'inscription samedi 22 septembre 2007 Statut Membre Dernière intervention 16 mars 2011
2 déc. 2009 à 07:59
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??
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mahamourta Messages postés 85 Date d'inscription jeudi 6 août 2009 Statut Membre Dernière intervention 2 septembre 2016
2 déc. 2009 à 21:58
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.
0
lovelacelana Messages postés 80 Date d'inscription samedi 22 septembre 2007 Statut Membre Dernière intervention 16 mars 2011
3 déc. 2009 à 08:21
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
0
mahamourta Messages postés 85 Date d'inscription jeudi 6 août 2009 Statut Membre Dernière intervention 2 septembre 2016
3 déc. 2009 à 11:31
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
0
lovelacelana Messages postés 80 Date d'inscription samedi 22 septembre 2007 Statut Membre Dernière intervention 16 mars 2011
3 déc. 2009 à 13:29
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);
0
mahamourta Messages postés 85 Date d'inscription jeudi 6 août 2009 Statut Membre Dernière intervention 2 septembre 2016
6 déc. 2009 à 22:19
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.
0
Rejoignez-nous