Affects Version/s: 1.2
Fix Version/s: 1.0
Operating System: All
A NullPointerException is thrown from StateManagerImpl.restoreView when the
session expires. Again, the code is checking ExternalContext.getSessionMap()
instead of ExternalContext.getSession(false). Also, there is an application
wide synchronization block in the code, this should be changed to synchronize on
the Session Object of the current thread.
This patch will both log, and return null if it's unable to restore server
session state. In relation to EG Issue #73, now the RestoreStatePhase can
handle the isPostback() && viewRoot == null case. The API docs should also be
elaborated for StateManager.restoreView as to what should happen if the state
cannot be restored (presumeably note returning null is okay).