У нас есть JSF1.2 Web-приложения с использованием Tomahawk с STATE_SAVING_METHOD
набором на «клиента».переходные члены Java не сбрасываются, когда восстанавливаются через т: saveState и javax.faces.STATE_SAVING_METHOD установлен на сервер
Мы часто используем <t:saveState>
для хранения содержимого компонента в течение более длительного времени, чем один запрос. Для того, чтобы минимизировать количество сохраненных данных, мы исключаем некоторые члены боба, которые сохраняются с помощью ключевого слова transient
:
public class MyBean implements Serializable {
private String firstValue;
private transient String notSerializedValue;
}
Когда этот компонент восстанавливается через <t:saveState>
, член firstValue
будет заполнена с исходным значением , член notSerializedValue
будет сброшен на null
;
Когда я установить STATE_SAVING_METHOD
к server
, член фасоли notSerializedValue
не сбрасывается, но также заполнена исходное значение, когда восстановлена с помощью <t:saveState>
.
Кажется, что фасоль не сериализована и десериализована, когда STATE_SAVING_METHOD
является server
.
Мой вопрос:
Могу ли я заставить JSF сбросить мои transient
боб-членов null
, когда STATE_SAVING_METHOD
является server
?
Я забыл упомянуть, что использую JSF SunRI. Здесь: http://www.coderanch.com/t/210921/JSF/java/STATE-SAVING-METHOD Я читал: «Сегодня, глядя на источник MyFaces, я был удивлен, увидев, что он« сериализуется »даже при сохранении режим сеанса ... «Будет ли это работать, если я использовал реализацию MyFaces? – Gio