Salve raga, ho un problema.....in una jsp installo un nuovo Cookie assegnando un nome ed un valore
Cookie c = new Cookie("MioCookie","aaaa");
response.addCookie(c)
in un'altra recupero il cookie ed il suo valore
Cookie[] cookies=request.getCookies();
int num=0;
for (int i=0;i<cookies.length;i++){
if (cookies[i].getName().equals("MioCookie")){
num=i;
}
else {
num=0;
}
}
la logica è che visito l'array che contiene i cookie, se ce n'è uno il cui nome è quello
specificato, l'iteratore i mi dà la posizione nell'array del cookie che cerco.
successivamente modifico il valore del cookie trovato
cookies[num].setValue("bbbb");
tutto chiaro no?
In una terza JSP rieseguo il ciclo, ricercando sempre il cookie con nome "MioCookie"...tanto prima ho solo modificato il valore...
il problema è che se stampo il valore del cookie trovato è "aaaa"....come mai?
Ho pensato (per qualche ragione) non è stato eseguito il setValue()....ma non è così..perchè
se eseguo il ciclo con .....cookies[i].getValue().equals("bbbb")..., ricercando dunque il cookie che vale "bbbb", quest'ultimo viene TROVATO! e se poi stampo il nome del cookie con....out.println(cookies[num].getName());....il nome del mio cookie è "MioCookie" dunque quello corretto....Cosa succede?