Uploaded image for project: 'Spring Web Flow'
  1. Spring Web Flow
  2. SWF-289

Introduce support for handling flow execution restoration failures due to flow expiry or browser backtracking



    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.0.2
    • 2.0 M4
    • JSF
    • None


      In a JSF environment currently if an exception occurs restoring a flow execution (because it has ended or expired) there is no "out-of-the-box" support provided for handling that exception and taking some sort of error action. After a flow execution has been successfully restored, no problem, you can use Spring Web Flow to handle exceptional situations as part of your navigation rules. It is the process of restoring the execution given an execution key that there is no "out-of-the-box" support for.

      So currently if a flow execution restoration exception occurs it goes uncaught and trickles all the way up the call-stack. You can see this in the sellitem-jsf sample by completing an order then going back to resubmit your order. The exception is thrown inside the restoreState method of the FlowExecutionKeyStateHolder component.

      Questions to answer are:

      • How are exceptions typically handled in a JSF environment?
      • Is it appropriate for an component to throw an exception? Or should it set a flag and the PhaseListener should execute some default exception handling logic based on that flag?

      See http://forum.springframework.org/showthread.php?t=37182


        Issue Links



              jeremyg484 Jeremy Grelle
              kdonald Keith Donald
              0 Vote for this issue
              1 Start watching this issue