Hi, I have a problem with navigation and would be happy to get advice.
I understand how the application manages navigation with the action attribute and the navigation handler. As long as the user uses application events (clicking a button, link etc.) to trigger navigation all is well: the current page is submitted using POST and the application determines what page to send next using a (dynamic) action attribute. However, the user can also use the back and forward buttons or go back to some arbitrary page from the history list of the browser (or enter a link in the browser directly). This brakes navigation: the requested page is created using restore view. Then the framework jumps directely to render response to send the requested page to the browser. Thus, it bypasses any navigation that is wired into the application using action listeners and action attributes. This kind of navigation may make sence in some situations but it will be a problem in others. Is there a way to prevent the user from jumping to some arbitrary page from the history list, depending on the state of the application? (In other words, how can one enforce the navigation that is wired into the application, if necessary?) Here is an example for what I mean: The user has worked through a "page flow" / "conversation" or what other terms are in use. The data are not saved in the backend though. Hence, before the user can leave the current "page flow", it would make sence to display a page that makes the user aware of the fact that there are unsaved data which may get lost. This page may ask the user to save the data or drop them. It follows, that this page must belong to the "page flow" because otherwise the data are already lost. (I assume that the data are saved at "flow scope".) Thanks in advance for any ideas. Regards Andreas Schenk

