我对OmniFaces的Viewscoped有点小问题。即使我的Managedbean实现了Serializable,我也收到以下错误:
具有钝化能力的bean必须满足具有钝化能力的依赖关系。
通过一些研究,我找到了一些关于这个问题的答案,但没有成功。我解决了我的问题,序列化了我正在注入CDI的其他课程。
我的其他类是否真的有必要在我的Managedbean中实现Serializable?
环境 - WebSphere Application Server 8.5.5.2 - Apache MyFaces 2.0.2 - OmniFaces 1.7 - PrimeFaces 5.0
我的班级:
public class AgrupamentoAcoRN{
@Inject
public TbSiglaAcoAgrupadaDAO dao;
public void insereDados(TbSiglaAcoAgrupada tbSiglaAcoAgrupada) throws BancoDeDadosException{
dao.insereRegistro(tbSiglaAcoAgrupada);
}
}
我的豆子:
@Named("agrupamentoAcoMb")
@ViewScoped
public class AgrupamentoAcoMB implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
@Inject
private AgrupamentoAcoRN rn;
}
答案 0 :(得分:7)
Serializable java类的所有字段都应该是可序列化的,因此viewScoped bean中的每个字段也应该是可序列化的。
您的问题与Omnifaces无关