Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1641 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [JSP-Servlet] doPost ne fonctionne pas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JSP-Servlet] doPost ne fonctionne pas

n°1954792
The Murder​er
Posté le 04-01-2010 à 14:11:27  profilanswer
 

Bonjour à tous !
 
Voila, j'obtiens une JasperException avec le Code suivant sur nimporte quel choix du Formulaire :
 

Code :
  1. private static final long serialVersionUID = 1L;
  2. public RequestDispatcher disp ;
  3. protected void doPost(HttpServletRequest req, HttpServletResponse resp)
  4. throws ServletException, IOException
  5. {
  6.  HttpSession session = ((HttpServletRequest) req).getSession(true) ;
  7.  String Attribut = (String) session.getAttribute("gestion" ) ;
  8.  if (Attribut == "choix" )
  9.  {
  10.   int choix = Integer.valueOf(req.getParameter("ferme" )) ;
  11.   choix = 1 ;
  12.   switch (choix)
  13.   {
  14.    case 1 :
  15.    disp = this.getServletContext().getRequestDispatcher("/Tableau.jsp" );
  16.    break ;
  17.    case 2 :
  18.    disp = this.getServletContext().getRequestDispatcher("/stats.jsp" );
  19.    break ;
  20.    case 3 :
  21.    disp = this.getServletContext().getRequestDispatcher("/naissance.jsp" );
  22.    break ;
  23.    case 4 :
  24.    disp = this.getServletContext().getRequestDispatcher("/poussins.jsp" );
  25.    break ;
  26.    case 5 :
  27.    disp = this.getServletContext().getRequestDispatcher("/sortie.jsp" );
  28.    break ;
  29.    case 6 :
  30.    disp = this.getServletContext().getRequestDispatcher("/entrée.jsp" );
  31.    break ;
  32.    case 7 :
  33.    disp = this.getServletContext().getRequestDispatcher("/Oeufs.jsp" );
  34.    break ;
  35.    case 8 :
  36.    disp = this.getServletContext().getRequestDispatcher("/sauvegarde.jsp" );
  37.    break ;
  38.    case 9 :
  39.    disp = this.getServletContext().getRequestDispatcher("/chargement.jsp" );
  40.    break ;
  41.    default :
  42.    break ;
  43.   }
  44.  }
  45.  else if (Attribut == "id" )
  46.  {
  47.   int id = Integer.valueOf(req.getParameter("id" )) ;
  48.   session.setAttribute ("id", id) ;
  49.   disp = this.getServletContext().getRequestDispatcher("/description.jsp" );
  50.  }
  51.  else if (Attribut == "consultation" )
  52.  {
  53.   int choix = Integer.valueOf(req.getParameter("tab" )) ;
  54.   session.setAttribute("id", choix) ;
  55.   disp = this.getServletContext().getRequestDispatcher("/choix.jsp" );
  56.  }
  57.  else if (Attribut == "tableau" )
  58.  {
  59.   int choix = Integer.valueOf (req.getParameter("OK" )) ;
  60.   Ferme ferme = (Ferme) (session.getAttribute("ferme" )) ;
  61.   int id = (Integer) (session.getAttribute("id" )) ;
  62.   disp = this.getServletContext().getRequestDispatcher("/description.jsp" );
  63.   switch (choix)
  64.   {
  65.    case 0 :
  66.    disp = this.getServletContext().getRequestDispatcher("/accueil.jsp" );
  67.    case 1 :
  68.    ferme.faireMourrir(id) ;
  69.    break ;
  70.    case 2 :
  71.    ferme.rentrerVache(id) ;
  72.    break ;
  73.    case 3 :
  74.    ferme.rentrerVache(id) ;
  75.    try
  76.    {
  77.     ferme.traireUneVache(id) ;
  78.    }
  79.    catch (AnimauxException e)
  80.    {
  81.     e.printStackTrace();
  82.    }
  83.    break ;
  84.    case 4 :
  85.    ferme.sortirVache(id) ;
  86.    break ;
  87.    case 5 :
  88.    try
  89.    {
  90.     ferme.traireUneVache(id) ;
  91.    }
  92.    catch (AnimauxException e)
  93.    {
  94.      e.printStackTrace();
  95.    }
  96.    break ;
  97.    default :
  98.    break ;
  99.   }
  100.   session.setAttribute("ferme", ferme) ;
  101.  }
  102.  else if (Attribut == "verif" )
  103.  {
  104.   int choix = Integer.valueOf (req.getParameter("Ver" )) ;
  105.   switch (choix)
  106.   {
  107.    case 0 :
  108.    disp = this.getServletContext().getRequestDispatcher("/accueil.jsp" );
  109.    break ;
  110.    case 1 :
  111.    disp = this.getServletContext().getRequestDispatcher("/Tableau.jsp" );
  112.    break ;
  113.   }
  114.  }
  115.  else //if ((session.getAttribute("gestion" )) == "accueil" )
  116.  {
  117.   disp = this.getServletContext().getRequestDispatcher("/accueil.jsp" );
  118.  }
  119.  if (disp != null)
  120.  {
  121.   disp.forward(req,resp) ;
  122.  }
  123. }


 
Voici aussi le code de la page d'accueil avec le Formulaire et une autre page JSP :
 

Code :
  1. <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head>
  5.  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6.  <title>Bienvenue Dans Notre Ferme</title>
  7. </head>
  8. <body bgcolor ="white">
  9. <% session.setAttribute ("gestion", "choix" ) ; %>
  10. <h2>Faites votre choix parmis ces propositions</h2>
  11. <hr>
  12. <form name="modification" method="post" action="Ferme">
  13.  <label for="animal">Tableau des Consultations.</label>
  14.  <input type="radio" id="animal" name="ferme" value="1"></input>
  15.  <label for="lait">Visualiser les Statistiques globales.</label>
  16.  <input type="radio" id="lait" name="ferme" value="2"></input>
  17.  <label for="vache">Faire naitre une Vache.</label>
  18.  <input type="radio" id="vache" name="ferme" value="3"></input>
  19.  <label for="poussins">Faire naitre une portée de poussins.</label>
  20.  <input type="radio" id="poussins" name="ferme" value="4"></input>
  21.  <label for="sortie">Emmenez les vaches au paturage. </label>
  22.  <input type="radio" id="sortie" name="ferme" value="5"></input>
  23.  <label for="entrée">Emmenez les vaches à l'etabli. </label>
  24.  <input type="radio" id="entrée" name="ferme" value="6"></input>
  25.  <label for="ponte">Ramassez tous les oeufs. </label>
  26.  <input type="radio" id="ponte" name="ferme" value="7"></input>
  27.  <label for="sauvegarde">Sauvegarder la Ferme actuelle.</label>
  28.  <input type="radio" id="sauvegarde" name="ferme" value="8"></input>
  29.  <label for="chargement">Chargement du Fichier XML.</label>
  30.  <input type="radio" id="chargement" name="ferme" value="9"></input>
  31.  <input type="submit" name="OK" value="OK">OK</input>
  32. </form>
  33. </body>
  34. </html>


 

Code :
  1. <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
  2.     pageEncoding="ISO-8859-1" import="java.util.Collection, Metiers.*"%>
  3. <jsp:useBean id="ferme" class="Metiers.Ferme" scope="session" />
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  5. <html>
  6. <head>
  7.  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  8.  <title>Tableau de Consultation</title>
  9. </head>
  10. <body bgcolor ="white">
  11. <% session.setAttribute ("gestion", "consultation" ) ; %>
  12. <h2>Tableau de Consultation</h2>
  13. <form name="form" action="Ferme" method="post">
  14. <table cellspacing="20px" border="2">
  15. <%  Collection<Animaux> tableau = ferme.getConsultation() ;
  16.  for (Animaux animal : tableau)
  17.  {
  18.   if (animal instanceof Vache)
  19.   {
  20. %>
  21.    <tr>
  22.     <td>Vache</td>
  23.     <th><%= animal.getId() %></th>
  24.     <td><%= animal.isVivante() %></td>
  25.     <td><%= animal.getAge() %></td>
  26.     <td><input type="radio" name="tab" value="<%= animal.getId() %>"></input></td>
  27.    </tr>
  28. <%
  29.   }
  30.   if (animal instanceof Poule)
  31.   {
  32. %>
  33.    <tr>
  34.     <td>Poule</td>
  35.     <th><%= animal.getId() %></th>
  36.     <td><%= animal.isVivante() %></td>
  37.     <td><%= animal.getAge() %></td>
  38.     <td><input type="radio" name="tab" value="<%= animal.getId() %>"></input></td>
  39.    </tr>
  40. <%
  41.   }
  42.  }
  43. %>
  44. </table>
  45. <hr>
  46.  <input type="submit" name="OK" value="OK">OK</input>
  47. </form>
  48. </body>
  49. </html>


 
Merci pour votre aide.
 

mood
Publicité
Posté le 04-01-2010 à 14:11:27  profilanswer
 

n°1954830
brisssou
8-/
Posté le 04-01-2010 à 14:47:56  profilanswer
 

et ton exception, elle dit quoi ?
 
sinon, dans ton if (dans la seconde JSP) t'as vu que seuls Vache et Poule sont différents ?
 
tu as bien mappé ta servlet dans ton web.xml ?


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
n°1954999
The Murder​er
Posté le 04-01-2010 à 23:16:05  profilanswer
 

Merci. En fait, la Classe Ferme n'était pas à la norme Bean. C'est la raison pour laquelle cela posait problème. Par contre, j'aimerais savoir la chose suivante :
 
Lorsqu'on écrit : application.setAttribute("ferme_verte", ferme) ; et que ensuite on effectue des opérations telles que ferme.traireVache() ; Dois-t-on réécrire ensuite application.setAttribute("ferme_verte", ferme) ; pour mettre l'attribut de session à jour ou cela se fait automatiquement.
 
Merci.

n°1955006
cbeyls
Hail to the King, Baby
Posté le 05-01-2010 à 03:52:49  profilanswer
 

Fais gaffe, en java tu ne peux pas tester l'égalité de deux chaînes de caractère avec ==, tu dois utiliser la méthode string.equals(autreString)
 
Pour répondre à ta question, tu ne dois mettre à jour cet attribut que si tu changes de ferme. Si tu appelles une méthode sur un objet Ferme, ta variable ferme pointera toujours sur le même objet Ferme après l'appel.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [JSP-Servlet] doPost ne fonctionne pas

 

Sujets relatifs
Recuperer un Attribut Bean dans Servlet[JSP] Récupérer le compte NT
[JSP] session.getAttribute("sUser") à null[JSP] récupérer des inputs
pb servlet java pour alivePdfExcel VBA, API SendMessage ne fonctionne pas
Redirection 301 qui ne fonctionne pas : help !Java/jsp/servlet
servlet>ejb>jpa clé composée 
Plus de sujets relatifs à : [JSP-Servlet] doPost ne fonctionne pas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR