Toto pravidlo značí pole s modifikátorem transient ve třídách, která jsou anotována s parametrem @SessionScoped.
V implementaci CDI (Contexts and Dependency Injection) 1.0 OpenWebBeans může aplikace nastavit pole transient přímo v objektech typu session-scoped bean. V implementaci CDI 1.2 Weld nastavení pole transient nepovede po překonání selhání přímo k naplnění pole daty, což může způsobit neočekávané chování ve vaší aplikaci.
Ověřte, že každé pole transient, které je označeno tímto pravidlem, je nastaveno pouze pomocí metody poskytnuté obsahující třídou. Není-li pro toto pole nastavena žádná metoda set, přidejte metodu set a zavolejte ji namísto přímého nastavení pole.
V následujícím příkladu je třída UserBean anotována s @SessionScoped.
Třída obsahuje také pole s modifikátorem transient, který je nastaven pomocí metody setter.
@Named(hodnota = "userBean")
@SessionScoped public class UserBean implementuje UserInterface, serializovatelný {
Název řetězce; dočasný řetězec nickName;
...
public void setNickName (String nick) {
nickName = nick;
} }
Další informace o implementaci Java Platform, Enterprise Edition (Java EE) 7 CDI 1.2 viz Změny chování Contexts and Dependency Injection 1.2.