javax.faces.STATE_SAVING_METHOD Сериализуемый
У меня есть интегрированное приложение JSF и Spring. Класс Bean Backing Bean для моей учетной записи имеет сеанс области видимости и является сериализуемым [как предложено здесь]. В моем файле web.xml javax.faces.STATE_SAVING_METHOD указано значение "сервер". Все работает хорошо все еще здесь.
[У меня есть Backing bean, класс Service и класс DAO в слоях.]
Когда я изменяю значение javax.faces.STATE_SAVING_METHOD на "клиент", приложение выдает исключение "java.io.NotSerializableException", указывающее на мой класс обслуживания. Если я сделаю класс обслуживания Serializable, то "java.io.NotSerializableException" будет указывать на мой класс DAO. Если я сделаю класс DAO Serializable, приложение будет работать без проблем.
Однако я считаю, что создание класса обслуживания и класса DAO Serializable не очень хороший подход.
Ищу мнение эксперта.
Заранее спасибо.
1 ответ
Вы должны пометить свой сервис как временный в компоненте поддержки своего аккаунта. Это предотвращает сериализацию.
Пример:
@RequestScoped
public class AccountBackingBean {
@EJB
private transient MyService myService;
private String someValue;
}
Смотрите также: