[ http://issues.apache.org/struts/browse/SHALE-61?page=comments#action_39107 ] Craig McClanahan commented on SHALE-61: ---------------------------------------
OK, the current behavior with respect to the back button is decidedly not optimal. I've been using shale-test-dialog-basic for my experiments (I imagine the SCXML implementation will behave similarly), and have found the following: * The server doesn't directly know that the user pressed the back button and resubmitted. * The resubmit goes back to the correct page (i.e. if you are on Page2, press Next, press Back Arrow, and press Next again, the submit gets (correctly) processed by Page2 and not by Page3). * However, the state manager would have thought you were in state Page3 above, and would (for this dialog definition) cause an error because it would be looking for a nonexistent "next" transition out of state "Page3". * In this particular sort of wizard dialog, a resubmit doesn't damage anything because it is just collecting data. You can use the token component in shale-core to catch the resubmit if that is not the case ... but then the user is stuck unless the dialog designer has provided a Cancel or Finish type control with immediate=true. I think this part of the design is acceptable. We need to think about whether we should try to include the current state identifier in the information that is saved and restored with the JSF component tree, so that repositioning might be done on the way back in, and think about what might still get screwed up. For example, with the Basic implementation there are still likely to be problems if you Back Arrow your way through a subdialog creation situation, where the depth of the stack might also need to be changed. > [shale] Maintaining dialog synchronization when browser navigation buttons > are used > ----------------------------------------------------------------------------------- > > Key: SHALE-61 > URL: http://issues.apache.org/struts/browse/SHALE-61 > Project: Shale > Issue Type: Bug > Components: Dialog > Environment: Operating System: other > Platform: Other > Reporter: Rahul Akolkar > Assigned To: Craig McClanahan > Fix For: 1.0.4-SNAPSHOT > > > I thought about making this an enhancement, but based on discussions on the > dev list, it seems there is a fair bit of interest in solving this at the > framework level. > The issue is about maintaining client-server dialog synchronization when > browser's navigation buttons are used while in the midst of a Shale dialog. > More details -- and the proof of concept for one potential approach at > resolving this -- are here: > http://people.apache.org/~rahul/shale/align-dialog/ -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/struts/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
