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

  FORUM HardWare.fr
  Programmation

  [JSP/SERVLET] lecture des cookies

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JSP/SERVLET] lecture des cookies

n°123292
scaldan
...
Posté le 08-04-2002 à 17:03:28  profilanswer
 

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 ??


---------------
Si tu ne poses pas les bonnes questions, comment veux-tu avoir les bonnes réponses ?
mood
Publicité
Posté le 08-04-2002 à 17:03:28  profilanswer
 

n°123380
benou
Posté le 08-04-2002 à 21:37:08  profilanswer
 

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 ...

n°123436
scaldan
...
Posté le 09-04-2002 à 09:21:52  profilanswer
 

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:


---------------
Si tu ne poses pas les bonnes questions, comment veux-tu avoir les bonnes réponses ?
n°123440
darklord
You're welcome
Posté le 09-04-2002 à 09:26:50  profilanswer
 

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]


---------------
Just because you feel good does not make you right
n°123442
scaldan
...
Posté le 09-04-2002 à 09:29:20  profilanswer
 

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


---------------
Si tu ne poses pas les bonnes questions, comment veux-tu avoir les bonnes réponses ?
n°123453
darklord
You're welcome
Posté le 09-04-2002 à 09:39:34  profilanswer
 

scaldan a écrit a écrit :

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




you're welcome :)


---------------
Just because you feel good does not make you right
n°123458
benou
Posté le 09-04-2002 à 09:54:19  profilanswer
 

DarkLord a écrit a écrit :

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




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


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

  [JSP/SERVLET] lecture des cookies

 

Sujets relatifs
[JAVA] bean et servletAfficher de l'XML parsé dans une page.........en JSP ?
Est ce que ce forum utilise les sessions ou seulement les cookies ??!!JCreator & JSP
[JAVA] JSP ne fonctionne pas[PHP/Cookies]Probleme a propos d'une incoherence sur les cookies(newbi
A l aide (servlet)PHP - Probleme cookies
[C++...CKK] pb lecture fichier ... HELP !!!Comment fait-on pour créer des cookies ?
Plus de sujets relatifs à : [JSP/SERVLET] lecture des cookies


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