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

 


Dernière réponse
Sujet : [JSP/SERVLET] lecture des cookies
benou

DarkLord a écrit a écrit :

 
Cookie c  
...
c.setPath(tonURI);




ben j'avais pas de trop mauvais souvenirs ... :)


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
benou

DarkLord a écrit a écrit :

 
Cookie c  
...
c.setPath(tonURI);




ben j'avais pas de trop mauvais souvenirs ... :)

darklord

scaldan a écrit a écrit :

merci dark lord, j'etais justement dans la doc java.  
 
:hello:  




you're welcome :)

scaldan merci dark lord, j'etais justement dans la doc java.  
 
:hello:
darklord Cookie c  
 
...
 
c.setPath(tonURI);
 
A+
 
http://java.sun.com/j2ee/sdk_1.3/t [...] ng.String)
 

Citation :


The cookie is visible to all the pages in the directory you specify, and all the pages in that directory's subdirectories. A cookie's path must include the servlet that set the cookie, for example, /catalog, which makes the cookie visible to all directories on the server under /catalog.  

 

[jfdsdjhfuetppo]--Message édité par DarkLord--[/jfdsdjhfuetppo]

scaldan ok merci,  
 
donc si j'ai bien compris un cookie est associé à un path, et comme ma page jsp n'est pas dans le même chemin que la servlet qui creer les cookies, il ne peut pas les charger.
 
Je vais regarder les options pour voir cela.
 
:hello:
benou c'est normal qu'il ne la trouve pas vu que ton cookie est associé à la servlet => ton navigateur web ne va envoyer le cookie que quand tu fais appel à la servlet. Pour que ca fonctionne, il faut que tu associe ton cookie à tout ton site, et ca je ne sais pas exactement comment on fait, ca doit être un attribut du cookie, genre path ...
scaldan voilou mon pb.  
 
Ma lecture des cookies fonctionne correctement avec une servlet mais pas avec une jsp. Un exemple concret :  
j'ai une cookie dont le nom est : toto et la valeur est : 15
si je le lit avec ma servlet il me retourne toto et 15
si je le lit avec ma jsp il me retourne JSESSIONID et 16norzmyws1
 
Si je desire lire le cookie par ma jsp c'est pour creer ma page de presentation dynamiquement.
 
voici ma servlet (elle fonctionne pil poil)
package core;
 
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
 
class ServletUtilities
{
  public static final String DOCTYPE =  
  "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
  "Transitional//EN\">";
 
  public static String headWithTitle(String title)
  {
   return(DOCTYPE + "\n" +
   "<HTML>\n" +
   "<HEAD><TITLE>" + title + "</TITLE></HEAD>\n" );
  }
}
 
/* create a table of the cookies associated with the current page */
 
public class ShowCookies extends HttpServlet
{
    public void doGet(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException
    {
 response.setContentType("text/html" );
 PrintWriter out = response.getWriter();
 String title = "Active Cookies";
 out.println(ServletUtilities.headWithTitle(title) +
      "<BODY BGCOLOR=\"#FDF5E6\">\n" +
      "<H1 ALIGN=\"CENTER\">" + title + "</H1>\n" +
      "<TABLE BORDER=1 ALIGN=\"CENTER\">\n" +
      "<TR BGCOLOR=\"#FFAD00\">\n" +
      "<TH> Cookie Name\n" +
      "<TH> Cookie Value" );
 Cookie[] cookies = request.getCookies();
 Cookie cookie;
 for(int i=0; i<cookies.length; i++)
 {
     cookie = cookies[i];
     out.println("<TR>\n" +  
   " <TD>" + cookie.getName() + "\n" +
   " <TD>" + cookie.getValue());  
 }  
 out.println("</TABLE></BODY></HTML>" );
 
    }
}
 
et la page jsp  
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
 <TITLE> Formulaire d'inscription </TITLE>
</HEAD>
 
<BODY BGCOLOR="#FDF5E6">
<H2 ALIGN="CENTER"> Transfert par méthode post du nom et prenom</H2>
 
<%-- vérification de la presence d'un cookie de nom generique AnimeCooky --%>
<%-- affichage dynamique de la page dans ce cas                          --%>
 
<%  
  boolean identification = false;
  String nom_cookie = new String("animeCooky" );
   
  Cookie[] cookies_list = request.getCookies();
  Cookie cookie_recup;
  for(int i=0; i<cookies_list.length; i++)
  {
   cookie_recup = cookies_list[i];  
%>
   nombre de cookie(s) : <%= cookies_list.length %> <BR>
   recuperation du nom des cookie(s) : <%= cookie_recup.getName() %> <BR>
   recuperation des valeurs des cookies : <%= cookie_recup.getValue() %><BR>    
<%
   if (nom_cookie.equals(cookie_recup.getName()))
   {  
     identification = true;
     break;
   }    
  }    
     
%>
 
<%-- Si le cookie existe, on appel la base de données pour affichage     --%>
<%-- de la liste de téléchargement                                       --%>
 
<%-- response.sendRedirect("/bean/inscription.jsp" ); --%>
<%-- Si le cookie n'est pas présent, on demande l'identifiant et         --%>
<%-- on verifie son existance dans la base de données.                   --%>
<%-- Autrement on propose l'enregistrement de la personne                --%>
 
Date du Jour : <%= new java.util.Date() %><BR><BR>
 
<FORM ACTION="/bean/servlet/core.present" METHOD="POST">
 Nom :
 <INPUT TYPE="TEXT" NAME="nom"><BR>
 Prénom :
 <INPUT TYPE="TEXT" NAME="prenom"><BR>
 <BR>
 <INPUT TYPE="SUBMIT"><BR><BR>
 Il faut être identifié pour avoir accés à la base de données du site.
 <BR>
 Si vous desirez vous inscrire valider le lien ci-dessous.
 <BR>
 <I><A HREF="/bean/inscription.jsp">here</A></I>
 
</FORM>
 
Ma methode est elle bonne ??

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)