Бины, способные к пассивации, должны удовлетворять зависимостям, способным к пассивации

У меня небольшая проблема с 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

Другие вопросы по тегам