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 :

Problème de requête dans ma servlet


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2010
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2010
    Messages : 67
    Par défaut Problème de requête dans ma servlet
    Bonjour , donc j'essaye de faire 2 requetes dans ma servlets qui doit afficher un livre soit par titre soit par mots clefs , mais on dirait que 1 toit n'est pas assez pour ces deux requetes ....il n'a que une requetes qui s'execute si j'efface l'autre ?
    quoi faire pour faire en sorte que ces deux requetes soit fonctionelle ?


    voici ma servlet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
     
    package com.TP1.controleur;
     
    import javax.servlet.RequestDispatcher;
    import java.io.PrintWriter;
    import java.io.IOException;
    import java.util.List;
    import java.util.logging.Level;
    import java.util.logging.Logger;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import javax.sql.DataSource;
    import javax.sql.*;
     
    import com.TP1.jdbc.Connexion;
    import com.TP1.entites.Livre;
    import com.TP1.jdbc.dao.LivresDAO;
     
    public class AfficherLivre extends HttpServlet 
    {
     
        @SuppressWarnings("CallToThreadDumpStack")
        protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException 
    { response.setContentType("text/html;charset=UTF-8");
              String  n1 = request.getParameter("isbn");   
               String n2 = request.getParameter("motscles");
     
               try 
              {
                 Class.forName("com.mysql.jdbc.Driver");
     
    	     Connexion.setUrl("jdbc:mysql://localhost/livres?user=root");
    	     Connection cnx = Connexion.getInstance();
     
    	     LivresDAO livDao = new LivresDAO(cnx);
                 //Livre livre; 
                 livDao.read(n1);
                //Methode des affichagess           
                List<Livre> listLivres = livDao.findLivre(n1); 
     
                 request.setAttribute("afficherlivres", listLivres);
     
                 RequestDispatcher r = this.getServletContext().getRequestDispatcher("/livre.jsp");
                 r.forward(request, response);             
     
           }
            catch(Exception e)
            {
                e.printStackTrace();
            }
     
              try
              {  
                 Class.forName("com.mysql.jdbc.Driver");
     
    	     Connexion.setUrl("jdbc:mysql://localhost/livres?user=root");
    	     Connection cnx = Connexion.getInstance();
     
    	     LivresDAO livDao = new LivresDAO(cnx);
                 //Livre livre; 
                 livDao.readMots(n2);
                //Methode des affichagess           
                List<Livre> listLivres = livDao.findMotsCles(n2); 
     
                 request.setAttribute("affichermots", listLivres);
     
                 RequestDispatcher r = this.getServletContext().getRequestDispatcher("/livre.jsp");
                 r.forward(request, response);             
     
           }
            catch(Exception e)
            {
                e.printStackTrace();
            }
     
                }
     
     
     
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException 
        {
            processRequest(request, response);
        }
     
     
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            processRequest(request, response);
        }
     
     
        @Override
        public String getServletInfo() {
            return "Short description";
        }// </editor-fold>
    }

  2. #2
    Membre Expert
    Avatar de fxrobin
    Homme Profil pro
    Architecte SI, Java Fan, API Manager
    Inscrit en
    Novembre 2007
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte SI, Java Fan, API Manager
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2007
    Messages : 875
    Par défaut
    c'est parce que tu fais 2 forward.
    Tu ne peux faire qu'un seul forward.

    Solution :
    1 - Donc tu déclenches tes 2 requêtes.
    2 - Tes 2 requêtes pose un attribut dans la request ...
    3 - ensuite tu dois faire LE forward.

  3. #3
    Membre éclairé Avatar de janyoura
    Femme Profil pro
    étudiante ingénierie informatique
    Inscrit en
    Mars 2012
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante ingénierie informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 365
    Par défaut
    Tu dois faire une structure conditionnelle selon l'attribut du request
    càd si recherche par titre tu exécutes la recherche par livre sinon tu exécuteras l'autre, et non pas les deux requêtes séparés avec chacun un forward

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/01/2009, 15h40
  2. Réponses: 4
    Dernier message: 16/12/2005, 16h25
  3. [Debutant]Problème Insertion Requête dans un StringGrid
    Par ghan77 dans le forum Web & réseau
    Réponses: 3
    Dernier message: 07/12/2005, 14h25
  4. problème de requête dans crystal reports
    Par rcs dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 05/08/2005, 16h45
  5. Réponses: 19
    Dernier message: 27/08/2003, 15h32

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