Campos temporários em beans com escopo por sessão não podem ter failover com êxito

Esta regra sinaliza campos com o modificador transient em classes que são anotadas com @SessionScoped. Na implementação do OpenWebBeans de Contexts and Dependency Injection (CDI) 1.0, um aplicativo pode configurar campos transient diretamente em beans com escopo por sessão. Na implementação do CDI 1.2 Weld, configurar o campo transient diretamente não resulta no campo sendo preenchido após o failover, o que pode causar comportamento inesperado em seu aplicativo.

Verifique se cada campo transient que é sinalizado por essa regra é configurado apenas usando um método fornecido pela classe que contém. Se não houver nenhum método configurado para o campo, inclua um método configurado e chame-o em vez de configurar o campo diretamente.

No exemplo a seguir, a classe UserBean é anotada com @SessionScoped. A classe também contém um campo com um modificador temporário que é configurado usando um método setter.

 @Named(valor = "userBean")
@SessionScoped classe pública UserBean implementa UserInterface, Serializable {
	Nome da sequência; Sequência temporária nickName;

	...

	public void setNickName (String nick) {
	    nickName = nick;
	} }

Para obter mais informações sobre a implementação do Java Platform, Enterprise Edition (Java EE) 7 CDI 1.2, consulte Mudanças de comportamento do Contexts and Dependency Injection 1.2.