Bonjour à tous,
Je programme une application java à l aide des jsp et de Struts et je rencontre quelques problèmes avec le stockage des cookies dans mon navigateur.
Voici mon code:
J'accèdes à la page index.jsp qui si aucun cookie n est présent me demande de m authentifier et dans ce cas dépose un cookie. Le cookie étant retrouvé il passe et affiche 2 liens permettant d'accéder à la liste des projets ou des consultants.
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 // Created by Xslt generator for Eclipse. // XSL : not found (java.io.FileNotFoundException: (No such file or directory)) // Default XSL used : easystruts.jar$org.easystruts.xslgen.JavaClass.xsl package com.dunod.lesjsp.action; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.sql.DataSource; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import com.dunod.lesjsp.form.MembreForm; /** * IdentAction.java created by EasyStruts - XsltGen. * http://easystruts.sf.net * created on 07-26-2007 * * XDoclet definition: * @struts:action path="/IdentAction" name="MembreForm" attribute="IdentForm" input="/index.jsp" validate="true" * @struts:action-forward name="/index.jsp" path="/index.jsp" */ public class IdentAction extends Action { // --------------------------------------------------------- Instance Variables // --------------------------------------------------------- Methods /** * Method execute * @param ActionMapping mapping * @param ActionForm form * @param HttpServletRequest request * @param HttpServletResponse response * @return ActionForward * @throws Exception */ public ActionForward execute( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { MembreForm MembreForm = (MembreForm) form; //connexion la base de donnes DataSource dataSource; Connection myConnection; try{ dataSource = getDataSource(request); myConnection = dataSource.getConnection(); //rcupration des valeurs du bean MembreForm String login = ((MembreForm)form).getLogin(); String loginUp = login.toUpperCase(); String pass = ((MembreForm)form).getPass().toUpperCase(); PreparedStatement stmt = myConnection.prepareStatement("SELECT login, pass FROM membres where upper(login)=? and upper(pass)=?)"); stmt.setString(1,loginUp); stmt.setString(2,pass); ResultSet rs = stmt.executeQuery(); if(rs.next()){ Cookie lesjspCookie = new Cookie("login", login); lesjspCookie.setMaxAge(60*60*24*365); response.addCookie(lesjspCookie); } else{ request.setAttribute("loginFaux", "Mauvais identifiant ou mot de passe, ressayer"); } } catch(SQLException sqle){ System.out.println(sqle); } return mapping.findForward("index"); } }
Je ne comprends pas vraiment pourquoi mon navigateur (firefox) n accepte pas ce cookie alors qu il en accepte d'autres (ex. google)...
Quelqu'un pourrait m aider???
Merci
Partager