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 :

Utiliser une servlet pour afficher le résultat dans une meme page JSP


Sujet :

Servlets/JSP Java

  1. #1
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut Utiliser une servlet pour afficher le résultat dans une meme page JSP
    Bonjour,
    j'ai un formulaire dans ma page JSP qui est le suivant :
    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
    <form id="form1" method="post" action='Pingtr'>
    					  <p></p>
    					  <p>
    					    <label>
    					      <input type="radio" name="mtu" value="1500"  />
    					      1500</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="mtu" value="2000"  />
    					      2000</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="mtu" value="4000"  />
    					      4000</label>
    				      </p>
    					  <p>Veuillez definir le nombre de paquets à envoyer: 
    					    <label for="textfield3"></label>
    					    <input type="text" name="paquet"  />
    					  </p>
    					  <p>
    					    <label for="textfield3"></label>
    					  Lancer le test : 
    					     <input type="submit" name="button" id="button" value="OK" />
    					  </p>
    </form>
    et ma servlet qui recupere les données et fait le traitement ( ici faire un ping linux )
    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
     
     
    import marouene.pingtrouble;
     
    public class Pingtr extends HttpServlet {
     
    	 protected void processRequest(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
     
    		 response.setContentType("text/html;charset=UTF-8");
    	        PrintWriter out = response.getWriter();
    	        String mtu = request.getParameter("mtu");
                String paquets = request.getParameter("paquet");
    		 pingtrouble ping = new pingtrouble();
    		String Perte = ping.perte("@server", mtu, paquets);
    		Double time = ping.time("@server", mtu, paquets);
     
     
    	 }
    	 protected void doGet(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
     processRequest(request, response);
    }
    	 protected void doPost(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
     processRequest(request, response);
    }
     
     
    }
    Comment par la suite afficher les resultats perte et time dans ma meme page initiale ?
    (aprés le champ formulaire)

  2. #2
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    personne pour m'aider svp ?

  3. #3
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    pas d'idée?

  4. #4
    Membre régulier
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Mars 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 94
    Points : 87
    Points
    87
    Par défaut
    faire une session pour perte et time (httpsession) dans votre servlet
    session.setAttribute("time",time);
    session.setAttribute("perte",perte);
    apres leurs definitions puis un requestDispatcher vers votre page jsp tous ça dans la servlet enfin dans votre page jsp faire if(request.getsession().getAttribute("time")!=null & request.getsession().getAttribute("perte")!=null ) out.println(request.getsession().getAttribute("time"),request.getsession().getAttribute("perte"));

  5. #5
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    Salut, merci pour votre réponse
    j'ai fait exactement ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    			<%  if(request.getsession().getAttribute("time")!=null & request.getsession().getAttribute("perte")!=null )   
                            {
                            out.println(request.getsession().getAttribute("time"),request.getsession().getAttribute("perte")); 
                            
                            }
                            
                            
                            
                              %>
    et dans ma servlet :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    		 pingtrouble ping = new pingtrouble();
    		String Perte = ping.perte("adresse", mtu, paquets);
    		Double time = ping.time("adresse", mtu, paquets);
     
    		HttpSession session = request.getSession();
    		session.setAttribute("time",time);
    		session.setAttribute("perte",Perte);
    		request.getRequestDispatcher("Pingtrouble.jsp").forward(request, response);
    Mais dans ma page JSP, on me generer l'erreure suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Multiple annotations found at this line:
    	- The method println(Object) in the type JspWriter is not applicable for the arguments (Object, 
    	 Object)
    	- The method println(Object) in the type JspWriter is not applicable for the arguments (Object, 
    	 Object)

  6. #6
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 084
    Points
    7 084
    Par défaut
    C'est "getSession"

    Il faut remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    out.println(request.getsession().getAttribute("time"),request.getsession().getAttribute("perte"));
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    out.println(request.getsession().getAttribute("time"));
    out.println(request.getsession().getAttribute("perte"));

  7. #7
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    C'est bon ca a marché merci

    sauf que la j'ai un petit probleme, quand je bascule vers une autre page , puis je retourne vers ma page Pingtrouble.jsp , je retrouve les résultats du calcul, comment faire pour fermer ma session ?

  8. #8
    Membre régulier
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Mars 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 94
    Points : 87
    Points
    87
    Par défaut
    faire invalidate() lorsque tu affiche les resultats

  9. #9
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    Citation Envoyé par trmalek Voir le message
    faire invalidate() lorsque tu affiche les resultats
    Comment juste à la suite de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <%  if(request.getsession().getAttribute("time")!=null & request.getsession().getAttribute("perte")!=null )   
                            {
                            out.println(request.getsession().getAttribute("time"),request.getsession().getAttribute("perte")); 
                            
                            }

  10. #10
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 084
    Points
    7 084
    Par défaut
    Je remplacerai les attributs de session par des attributs de requête. C'est plus propre et cohérent !

  11. #11
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    Citation Envoyé par Nemek Voir le message
    Je remplacerai les attributs de session par des attributs de requête. C'est plus propre et cohérent !
    j'ai pas trop compris
    j'enleve la session que j'ai crée?

  12. #12
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 084
    Points
    7 084
    Par défaut
    Tu remplaces session.(s/g)etAttributes par request.(s/g)etAttributes

  13. #13
    Membre régulier
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Mars 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 94
    Points : 87
    Points
    87
    Par défaut
    Citation Envoyé par marouene_ Voir le message
    Comment juste à la suite de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <%  if(request.getsession().getAttribute("time")!=null & request.getsession().getAttribute("perte")!=null )   
                            {
                            out.println(request.getsession().getAttribute("time"),request.getsession().getAttribute("perte")); 
                            
                            }
    oui apres l'affichage entre les { } de if

  14. #14
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    J'ai changé ca...avec request.(s/g) et tt..
    mais ce qui est bizarre c'est que j'ai toujours le meme résultat qui s'affiche alors quil doit changer ....

  15. #15
    Membre régulier
    Homme Profil pro
    Ingénieur développement de composants
    Inscrit en
    Mars 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement de composants
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mars 2011
    Messages : 94
    Points : 87
    Points
    87
    Par défaut
    donnez le code complet de votre page jsp et extrait de votre servlet

  16. #16
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    Voila mon code de JSP
    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
     
    <body>
    	<div id="header">
    	 <embed src="marouene.swf" width="901" height="105" align="middle" allowscriptaccess="always" flashvars="clickTAG=file:///C:/Users/Marouene/Desktop/exemple%20css/index.html"
    pluginspage="http://www.adobe.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" scale="exactfit" bgcolor="#D6D6D6"> </embed>
     
    </div>
    	<!-- end #header -->
    	<div id="menu">
    		<ul>
    			<li class="first"><a href="Ftptrouble.jsp">Ftp</a></li>
    			<li><a href="Http.jsp">Http</a></li>
    			<li><a href="Dns.jsp">Dns</a></li>
    			<li></li>
    			<li><a href="Ping.jsp">Ping</a></li>
    			<li><a href="#">Contact</a></li>
    		</ul>
    	</div>
    	<!-- end #menu -->
    <div id="wrapper">
    <div class="btm">
    	<div id="page">
    		<div id="content">
    			<div class="post">
    				<h1 class="title">Ftp troubleshooting</h1>
    				<div class="entry">
    				  <p>&nbsp;</p>
    					<p><strong>Veuillez choisir la taille du fichier à télécharger : </strong></p>
    					<form id="form1" method="post" action='Ftptr'>
    					  <p></p>
    					  <p>
    					    <label>
    					      <input type="radio" name="fichier" value="30M" />
    					      Fichier de 30 Mega</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="fichier" value="50M" />
    					      Fichier de 50 Mega</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="fichier" value="70M" />
    					      Fichier de 70 Mega</label>
    					    <br />
    				      </p>
    				      <p><strong>Veuillez choisir le serveur à tester : </strong></p>
    				        <p>
    					    <label>
    					      <input type="radio" name="server" value="41.254.22.15"  />
    					      Serveur de test 1</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="server" value="bouton radio" />
    					      Serveur de test 2</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="server" value="bouton radio"  />
    					      Serveur de test 3</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="server" value="bouton radio" />
    					      Serveur de test 4</label>
    					    <br />
    					    <label>
    					      <input type="radio" name="server" value="bouton radio" />
    					      Serveur de test 5</label>
    					    <br />
    				      </p>
    					  <p>Lancer le test : 
    					     <input type="submit" name="button" id="button" value="OK" />
    					  </p>
    					  <p></p>
    			      </form>
    				  <form id="form2" method="post" action="">
    					  <p></p>
    				  </form>
    					<form id="form3" method="post" action="">
    					  <p>&nbsp;</p>
    					     </form>
    					     <%  if(request.getAttribute("rate")!=null )   
                            { 
                    %>
    					   <p><strong>Résultats : </strong></p>
    					   Taux de téléchargements en Ko/s est de : <% out.print(request.getSession().getAttribute("rate"));%>
    					   <p>&nbsp;</p>
    					  <p><strong>Récupération des fichiers traces wireshark: </strong></p>
    					  <ul>
    					    <li><a href="#">Fichiers traces clients.</a></li>
    					    <li><a href="#">Fichiers traces serveurs.</a></li>
    				      </ul>
     
    				      <% } session.invalidate();%>
    					  <p>&nbsp;</p>
    					  <p>&nbsp;</p>
    					  <p>&nbsp;</p>
    					  <p>&nbsp;</p>
     
    					<p>&nbsp;</p>
    					<p>&nbsp;</p>
    			  </div>
    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
    public class Ftptr extends HttpServlet {
     
    	 protected void processRequest(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
    		 DecimalFormat df = new DecimalFormat("########.00"); 
    		 	response.setContentType("text/html;charset=UTF-8");
    	     	PrintWriter out = response.getWriter();
    	        String fichier = request.getParameter("fichier");
                String server = request.getParameter("server");
     
    		 TestFtp ftp = new TestFtp();
    		double rate = ftp.calculdebitftp(server,fichier);
     
    		//HttpSession session = request.getSession();
    		request.setAttribute("rate",df.format(rate));
    		request.getRequestDispatcher("Ftptrouble.jsp").forward(request, response);
     
    	 }
    	 protected void doGet(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
     processRequest(request, response);
    }
    	 protected void doPost(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException {
     processRequest(request, response);
    }
     
     
    }

  17. #17
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 084
    Points
    7 084
    Par défaut
    Dans ta servlet tu utilises les attributs de la requête et dans ta page JSP tu utilises les attributs de la session.

  18. #18
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    je vais essayer ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <% out.print(request.getAttribute("rate"));%>

  19. #19
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 084
    Points
    7 084
    Par défaut
    Tu peux remplacer par
    Citation Envoyé par marouene_ Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%=request.getAttribute("rate")%>

  20. #20
    Membre éclairé
    Inscrit en
    Août 2010
    Messages
    416
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 416
    Points : 828
    Points
    828
    Par défaut
    C bon ca a marché
    merci a vous deux

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 9
    Dernier message: 03/12/2014, 13h09
  2. Réponses: 3
    Dernier message: 08/09/2014, 00h13
  3. Réponses: 2
    Dernier message: 23/05/2014, 08h41
  4. Réponses: 3
    Dernier message: 12/08/2011, 09h42
  5. Réponses: 2
    Dernier message: 04/06/2009, 14h49

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