A file name based
FlowUrlHandler implementation that is an alternative to the standard
DefaultFlowUrlHandler. Treats the filename of a request without the URL suffix and/or prefix as the flow id.
Used by the
org.springframework.webflow.mvc.servlet.FlowController implementation as a default
implementation to preserve compatibility with existing Web Flow 2 applications.
This implementation extracts the filename and removes the file extension from the request URL. The results will be
used as the flow Id that must be unique throughout the application.
For example the URLs:
http://someHost/someApp/someServlet/foo
http://someHost/someApp/someServlet/nestedPath/foo
http://someHost/someApp/someServlet/nestedPath/foo.html
will all treat the filename "foo" as the flow id.
Note: Because this class only treats a filename as a flow id, clashes can result. For example:
http://localhost/springtravel/app/hotel/booking
http://localhost/springtravel/app/flight/booking
would both map the same flow id "booking", instead of "hotel/booking" and "flight/booking". This is an limitation of
this implementation. Consider using the standard
DefaultFlowUrlHandler that uses the request URL prefix as
well to avoid these clashes.