У меня есть класс Serializable Bean, который состоит из экземпляра интерфейса dozerMapper
из MapperIF
. Все работало нормально, прежде чем я добавил PersistentManager
в файл context.xm на сервере Tomcat. С PersistentManager
я сохраняю все Объекты в сеансе в виде файла в папке. Но после того, как я добавил PersistentManager
, он начал выдавать NotSerializableException
из-за интерфейса MapperIF внутри моего класса Bean. Добавление ключевого слова transient
к MapperIF может решить проблему NotSerializableException
, но в итоге он заканчивается NullPointerException
, так как dozerMapper.map становится пустым в приведенном ниже коде. Так, как я могу справиться с этой ситуацией для сериализации моего класса бина.
@Autowired
private transient MapperIF dozerMapper;
public Preferences getUiPreferences() {
if (this.uiPreferences == null) {
this.uiPreferences = ((Preferences) this.dozerMapper.map(
getPrefernces(), Preferences.class));
}
return this.uiPreferences;
}