Cast Object vers ArrayList<String> java1.5

el_teedee Messages postés 497 Date d'inscription mercredi 7 juillet 2004 Statut Membre Dernière intervention 13 juillet 2015 - 9 août 2007 à 12:34
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 - 9 août 2007 à 20:27
Salut à tous,

voilà, je comprend pas vraiment (juste un peu en fait) les générics en java 1.5.

Contexte : je mets une ArrayList<String> dans ma session J2EE, et lorsque je souhaite la récupérer, getAttribute renvoyant un Object, il me faut la caster. (en tout cas, comme j'aurais fait en 1.4)

Code qui plante :
ArrayList<String> al = new ArrayList<String>();
al = (ArrayList<String>)request.getSession().getAttribute("attribut");

Le problème est qu'il me sort les erreurs suivantes :

1. si je cast en ArrayList tout court :
Type safety: The expression of type ArrayList needs unchecked conversion to conform to
 ArrayList<String>

2. si je cast (tout logiquement) en ArrayList<String> :
Type safety: The cast from Object to ArrayList<String> is actually checking against the erased
 type ArrayList

Qui m'est totalement incompréhensible, et inconnu au bataillon.

Avez-vous la solution pour réussier à récupérer mon arraylist de ma session ? Merci
A voir également:

6 réponses

cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
9 août 2007 à 14:10
en gros ce qu il te dit c est que tu cast mais que tu n est pas sur d en avoir ... c est une warning ca non ? cela ne doit pas bloquer ton programme?

autrement il est difficile d analyser le problem ;o) ne sachant ce qu est 'request' et donc ne connaissant pas les possibilité de getAttribute ;o) ...
autrement l utilisation des typage de tableau est bien simpatique pour le parcour leur parcout ou la en utilisant la boucle for each tu n as plus besoin de caster les elements... ;o)

GL

GodConan ;o)
0