diff --git a/spring-webflow-reference/src/system-setup.xml b/spring-webflow-reference/src/system-setup.xml index dda3c5d3..146b90e0 100644 --- a/spring-webflow-reference/src/system-setup.xml +++ b/spring-webflow-reference/src/system-setup.xml @@ -139,11 +139,42 @@ ]]> + + Flow location base path + + Use the base-path attribute to define the base location of all flow definitions for the application. + All flow locations, for the registry, are loaded relative to the base path. + The base path can be a file path such as '/WEB-INF' or a location on the classpath like 'classpath:org/springframework/webflow/samples'. + + + ... +]]> + + + When a base path is defined, the convention is different to determine the default flow identifier. + The default identifier is determined from the path to the flow definition between the base path and the file name. + For example, if a flow definition is located at '/WEB-INF/hotels/booking/booking-flow.xml' and the base path is '/WEB-INF' the remaining path to the flow definition file is 'hotels/booking' which becomes the flow identifier. + + + Directory per flow definition + + It is a best practice to package each flow definition in a unique directory. + This allows flow specific resources to be packaged with the flow definition. + It also prevents two flows from obtaining the same identifier by convention. + + + + If the base path is not specified or if the flow definition is directly on the base path, the filename (without the extension) is used. + For example, if a flow definition file is 'booking.xml', the flow identifier is 'booking'. + + Specifying flow locations Use the location element to specify paths to flow definitions to register. - By default, flows will be assigned registry identifiers equal to their filenames minus the file extension. + By default, flows will be assigned registry identifiers equal to their filenames minus the file extension, unless a registry bath path is defined. + See Flow location base path for more information. ]]> @@ -180,6 +211,16 @@ ]]> + + Location patterns are particularly powerful when combined with a registry base path. + Instead of the flow identifiers becoming '*-flow', they will be based on the path represented by '**'. + For example: + + + +]]> +