Class FlowExecutionExceptionResolver

  • All Implemented Interfaces:
    org.springframework.web.servlet.HandlerExceptionResolver

    public class FlowExecutionExceptionResolver
    extends java.lang.Object
    implements org.springframework.web.servlet.HandlerExceptionResolver
    The FlowExecutionExceptionResolver catches the FlowExecutionRepositoryException thrown by Spring Webflow when the given flow id no longer exists. This can occur if a particular flow has reached an end state (the id is no longer valid)

    It will redirect back to the requested URI which should start a new workflow.

    Since:
    3.0.0
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.springframework.web.servlet.ModelAndView resolveException​(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.lang.Object handler, java.lang.Exception exception)
      Since FlowExecutionRepositoryException is a common ancestor to these exceptions and other error cases we would likely want to hide from the user, it seems reasonable to check for FlowExecutionRepositoryException.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • FlowExecutionExceptionResolver

        public FlowExecutionExceptionResolver()
    • Method Detail

      • resolveException

        public org.springframework.web.servlet.ModelAndView resolveException​(javax.servlet.http.HttpServletRequest request,
                                                                             javax.servlet.http.HttpServletResponse response,
                                                                             java.lang.Object handler,
                                                                             java.lang.Exception exception)
        Since FlowExecutionRepositoryException is a common ancestor to these exceptions and other error cases we would likely want to hide from the user, it seems reasonable to check for FlowExecutionRepositoryException.

        BadlyFormattedFlowExecutionKeyException is specifically ignored by this handler because redirecting to the requested URI with this exception may cause an infinite redirect loop (i.e. when invalid "execution" parameter exists as part of the query string

        Specified by:
        resolveException in interface org.springframework.web.servlet.HandlerExceptionResolver