Бины, способные к пассивации, должны удовлетворять зависимостям, способным к пассивации
У меня небольшая проблема с Viewscoped от OmniFaces. Даже с моим Managedbean, реализующим Serializable, я получаю ошибку ниже:
Бины, способные к пассивации, должны удовлетворять зависимостям, способным к пассивации.
В результате некоторых исследований я нашел ответы на эту проблему, но безуспешно. Я решил проблему с сериализацией своего другого класса, который я вводил с помощью CDI.
Действительно ли необходимо, чтобы мои другие классы реализовывали Serializable для инъекций в моем Managedbean?
Среда - 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;
}
1 ответ
Все поля Java-класса Serializable должны быть сериализуемыми, поэтому каждое поле в вашем bean-объекте viewScoped также должно быть сериализуемым.
Ваша проблема не имеет ничего общего с Omnifaces