IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

appel de servlet à partir de jsp


Sujet :

Servlets/JSP Java

  1. #1
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 93
    Points : 60
    Points
    60
    Par défaut appel de servlet à partir de jsp
    salut à tous,
    je suis entrain d'essayer de coder ma premiere webapp avec les servlets et les jsp uniquement.
    j'ai consu un formulaire dans un fichier form.jsp, j'ai egalement une servlet qui recupere les donnees issues du formulaire et apres analyse, doit reafficher la page form.jsp
    mon probleme est que je ne sais pas comment faire appel à ma servlet (dans traitement.java) à partir de form.jsp pour le traitement.
    merci pour votre aide

  2. #2
    Membre habitué
    Inscrit en
    Mars 2005
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 237
    Points : 181
    Points
    181
    Par défaut
    dans la .jsp :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form name="form1" action="/ServletInit" method="post">
    dans le web.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    		<servlet-name>ServletInit</servlet-name>
    		<servlet-class>com.test.projet.web.ServletInit</servlet-class>
    	</servlet>
     
    	<servlet-mapping>
    		<servlet-name>ServletInit</servlet-name>
    		<url-pattern>/ServletInit</url-pattern>
    	</servlet-mapping>

  3. #3
    Membre éprouvé
    Avatar de yolepro
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Points : 1 144
    Points
    1 144
    Par défaut
    Bonjour eyango,

    Tu as des cours fait pour toi ici :

    http://java.developpez.com/cours/#j2ee

    Cela fait parti des bases du développement J2EE.
    N'oublie pas non plus d'utiliser la fonction recherche, cette réponse a FORCEMENT été posée.

    Etre c'est etre relatif.

  4. #4
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 93
    Points : 60
    Points
    60
    Par défaut
    Merci à tous les deux
    c'est vrai que je jette souvent un coup d'oeil au forum mais je ne vois que les derniers posts. je ne pensais pas à la recherche, merci pour le rappel et pour les réponses.

  5. #5
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 93
    Points : 60
    Points
    60
    Par défaut
    Salut à tous,
    J'ai à peu près fait le tour du forum et j'ai essayé de mettre en pratique de que j'ai lu. Mais j'ai un message d'erreur à la validation de mon formulaire. En effet, ma servlet est introuvable (erreur 404). Pouvez m'aider à déterminer le problème?

    voici les codes :

    form.jsp
    ...
    ResultSet r = (ResultSet)request.getAttribute("resultat");
    if(r != null)
    {
    ...
    }
    %>
    <form action="/servletUrl" method="post">
    <br><br>
    <div>
    Code :
    <input name="code" value="<%= codeEx %>" type="text" size="+5" />
    </div>
    <input type="submit" value="valider" />
    </form>
    <%
    ...

    maServlet.java
    ...
    ResultSet res = st.executeQuery(query);
    request.setAttribute("resultat", res);
    request.getRequestDispatcher("/form.jsp").forward(request, response);
    ...


    web.xml
    ...
    <servlet>

    <servlet-name>maservlet</servlet-name>
    <servlet-class>packServlet.maServlet</servlet-class>

    <load-on-startup>1</load-on-startup>

    <servlet-mapping>
    <servlet-name>maservlet</servlet-name>
    <url-pattern>/servletUrl</url-pattern>
    </servlet-mapping>

    </servlet>
    ...

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Essayes avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <form action="<%=request.getContextPath()%>/servletUrl" methode="POST">
    ...
    </form>
    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 93
    Points : 60
    Points
    60
    Par défaut
    Merci pour la proposition.
    J'avais déjà essayé cette méthode, je viens de le refaire et j'ai toujours l'erreur 404. Avez vous d'autres propositions svp?

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    As-tu une balise <BASE ...> dans ta page ?
    Peux-tu montrer la page ?

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 93
    Points : 60
    Points
    60
    Par défaut
    non j'ai pas de balise <BASE...>
    je vous joinds tout le code de la page jsp

    <%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" session="true" %>

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>test</title>
    <link href="./styles.css" rel="stylesheet" type="text/css">
    </head>

    <body>

    <%
    // message de demande d'un code valide
    String msgV = request.getParameter("msgValCodeEx");
    if(msgV != null)
    {
    out.println(msgV);
    }

    // message de blocage du compte client
    String msgB = request.getParameter("msgBlocage");
    if(msgB != null)
    {
    out.println(msgB);
    }

    // accuse de reception
    String msgR = request.getParameter("msgRetour");
    if(msgR != null)
    {
    out.println(msgR);
    }

    %>
    <form action="<%=request.getContextPath()%>/servletUrl" method="POST">
    <br><br>
    <div>
    Code :
    <input name="code" type="text" size="+5" />
    </div>
    <input type="submit" value="valider" />
    </form>
    <%

    // affichage de la liste
    %>
    <div id="basetab">
    <div class="stab"><b>Code </b></div>
    <div class="stab0"><b>Titre</b></div>
    <%

    ResultSet r = (ResultSet)request.getAttribute("resultat");
    if(r != null)
    {
    r.beforeFirst();
    while(r.next())
    {
    int code = r.getInt("code");
    String titre = r.getString("titre");
    %>
    <div class="stabl"><b><a href="servletUrl"><%= code %></a></b></div>
    <div class="stabl0"><b><%= titre %></b></div>
    <%
    }
    %>
    </div>
    <%
    }

    %>
    </body>
    </html>

  10. #10
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Je viens de repérer un truc dans ton fichier web.xml !
    Tu as mis la balise servlet-mapping à l'intérieur de la balise servlet, il faudrait la sortir...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <servlet>
       <servlet-name>maservlet</servlet-name>
       <servlet-class>packServlet.maServlet</servlet-class>
       <load-on-startup>1</load-on-startup>
    </servlet>
     
    <servlet-mapping>
       <servlet-name>maservlet</servlet-name>
       <url-pattern>/servletUrl</url-pattern>
    </servlet-mapping>
    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 93
    Points : 60
    Points
    60
    Par défaut
    merci OButterlin, mais ca ne resoud pas mon problème. que faire?

  12. #12
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Je ne vois pas d'erreur dans le code que tu nous montres, mais bon, à tout hasard, ta servlet définie bien une de ces fonctions :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    {
    ...
    }
     
    ou 
     
    public void service(HttpServletRequest request, HttpServletResponse response)
    {
    ...
    }
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Membre éprouvé
    Avatar de yolepro
    Profil pro
    Architecte de système d'information
    Inscrit en
    Mai 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Points : 1 144
    Points
    1 144
    Par défaut
    Bonjour eyango,

    Peux tu nous montrer la trace exacte de ton serveur depuis le démarrage.

    Ensuite fait une sortie console de ton adresse générée par <%=request.getContextPath()%>/servletUrl

    Enfin, pour tester dans un premier temps l'acces à ta servlet, tu devrais implémenter la méthode doGet dans ta servlet, y mettre un point d'arret (ou un system.out) et faire des tests d'url directement dans ton navigateur.
    Etre c'est etre relatif.

  14. #14
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 93
    Points : 60
    Points
    60
    Par défaut
    salut à tous,
    pour répondre à une question qui m'a été posée, oui, j'ai bien les methodes doPost et doGet dans ma servlet.
    j'ai essayé de créer une simple servlet d'affichage dans le même package que celle de ma servlet afin de voir si celle-ci était visible et c'était le cas. alors j'ai introduit un system.out dans ma servlet et elle a été affichée. donc avec cette méthode, j'ai finalement pu trouver une solution à mon problème. merci encore à tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Appeler une servlet à partir d'une image
    Par momjunior dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 26/04/2012, 13h16
  2. Appeler une servlet à partir d'un projet J2ME
    Par chimouch dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 21/04/2011, 18h01
  3. appeler une servlet à partir d'un projet j2me
    Par chimouch dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 19/04/2011, 10h50
  4. appeler une servlet depuis une JSP
    Par el_harrathi dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 26/04/2008, 00h07
  5. appel de servlet dans une jsp
    Par narnia dans le forum Servlets/JSP
    Réponses: 12
    Dernier message: 21/02/2008, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo