Les variables statiques restriction dans des beans de session
Il est impossible d'utiliser des variables statiques sur un bean de session de code. Est-ce une restriction arbitraire ou fundamented? Et pourquoi?
En ce qui concerne meilleur
- eh bien, pas impossible, essayez de
final static
Vous devez vous connecter pour publier un commentaire.
Comme indiqué dans le FAQ sur les EJB restrictions, l'une des restrictions pour l'utilisation des Ejb est:
Plus en détail dans les discussion sur les champs statiques:
nonfinal static fields
, plutôt que pournonfinal static primitives
ETany static complex types
? C'est un peu trompeuse.Il est fondamental. Selon cette soleil documenation,
Nonfinal champs de classe statique sont interdits dans les EJBs, car ces champs une entreprise bean difficile ou impossible de les distribuer. Champs de classe statique sont partagés entre toutes les instances d'une classe particulière, mais seulement au sein d'une seule Machine Virtuelle Java (JVM). *
Maintenant,
javabeans
sont supposés avoir des données spécifiques à l'utilisateur,static
champs ne font pas de sens pour ces.Un utilisateur modifie une variable, ant il sera mis à jour pour tous les autres utilisateurs. (à exempt du coût :-)).
Cependant, si vous voulez comportement statique de ces dernières (c'est à dire en utilisant les mêmes données pour tous les utilisateurs), vous avez
application
à cette fin.