[jsr-314-open] [549-AJAX] Keep server-side state ID for AJAX requests.

Alexandr Smirnov asmirnov at EXADEL.COM
Wed Apr 29 17:50:03 EDT 2009


In the case of server-side state saving, implementation of
ResponseStateManager saves a new state for an every request,even for a
same viewId as previous was, and generates a new value for
"javax.faces.ViewState" hidden field. That feature allows JSF to restore
proper view state then user returns to previous page by browser "back"
button and submit some form from that page again.
But that behaviour is incorrect for AJAX requests because in this case
browser does not save page in history ( Even if "back" button support
for AJAX will be implemented, it could be done by special 'iframe'
object only, and does not save page in history anyway ), and old values
is only going to garbage. As a result, small view states cache ( which
default size is 16 ) could be refilled by values from AJAX requests
soon, and browser "back" button support will be broken.
Patch to fix that issue have been attached to
https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=549




More information about the jsr-314-open-mirror mailing list