Este regla señala los campos con el modificador transient en las clases que se anotan con
@SessionScoped.
En la implementación de OpenWebBeans de Contexts and Dependency Injection (CDI) 1.0, una aplicación puede
establecer los campos transient directamente en los beans con ámbito de sesión. En la implementación de Weld de CDI 1.2, el establecimiento directo del campo transient no hace que el
campo se llene después de la migración tras error, lo que puede producir un comportamiento inesperado
en la aplicación.
Verifique que cada campo transient marcado por esta regla sólo se establece utilizando
un método proporcionado por la clase que lo contiene. Si no hay ningún método establecido para el campo, añada un
método establecido y llámelo en lugar de establecer el campo directamente.
En el ejemplo siguiente, la clase UserBean se anota con @SessionScoped.
La
clase también contiene un campo con un modificador transitorio que se establece utilizando un
método de establecimiento.
@Named(valor = "userBean")
@SessionScoped clase pública UserBean implementa UserInterface, Serializable {
Nombre de serie; serie transitoria nickName;
...
public void setNickName (String nick) {
nickName = nick;
} }
Para obtener más información sobre la implementación de Java Platform, Enterprise Edition (Java EE) 7 CDI 1.2, consulte Cambios de comportamiento de Contexts and Dependency Injection 1.2.