2015-07-24 1 views
3

J'ai un petit problème avec Viewscoped d'OmniFaces. Même avec mon Managedbean implémentant Serializable, je reçois l'erreur ci-dessous:Les beans capables de passivation doivent satisfaire les dépendances capables de passivation

Les beans capables de passivation doivent satisfaire des dépendances capables de passivation.

Avec quelques recherches, j'ai trouvé quelques réponses à propos de ce problème mais sans succès. J'ai résolu mon problème en sérialisant mon autre cours que j'injecte avec CDI.

Est-ce vraiment nécessaire mes autres classes implémentant Serializable à Injecter dans ma Managedbean?

Environnement - WebSphere Application Server 8.5.5.2 - Apache 2.0.2 MyFaces - OmniFaces 1,7 - PrimeFaces 5,0

Ma Classe:

public class AgrupamentoAcoRN{ 

@Inject 
public TbSiglaAcoAgrupadaDAO dao; 

public void insereDados(TbSiglaAcoAgrupada tbSiglaAcoAgrupada) throws BancoDeDadosException{ 
    dao.insereRegistro(tbSiglaAcoAgrupada); 
} 
} 

Mon Bean:

@Named("agrupamentoAcoMb") 
@ViewScoped 
public class AgrupamentoAcoMB implements Serializable{ 

/** 
* 
*/ 
private static final long serialVersionUID = 1L; 

@Inject 
private AgrupamentoAcoRN rn; 
} 

Répondre

6

Tous les champs d'une classe Java sérialisable doivent être sérialisables, pou ce chaque champ dans votre bean viewScoped devrait être sérialisable aussi.

Votre problème n'a rien à voir avec Omnifaces