Package com.ervacon.springframework.web.servlet.mvc.webflow

Controller implementation for the Spring web MVC framework that handles requests using a web flow.

See:
          Description

Interface Summary
Action Interface for actions executed by a web flow.
ModelMapper Interface for model data mappers.
ParameterExtractor Interface for strategy objects used by the web flow controller to extract parameter values from an incoming HTTP request.
WebFlow Interface implemented by all web flow implementations.
 

Class Summary
BindAndValidateCommandAction Action implementation which creates an object (the command object) on execution and attempts to populate this object with request parameters.
MultiAction Action implementation that bundles many action execution methods into a single action implementation class.
ParameterizableModelMapper Simple model mapper that allows mappings to be configured in the Spring application context.
RequestParameterNameParameterExtractor Parameter extractor that obtains a parameter value from the name of a request parameter.
RequestParameterValueParameterExtractor Simple parameter extractor that just obtains the parmeter value from the request.
SignalEventAction Simple action that takes a String value from the flow model and signals (returns) it as an event.
SimpleFormAction Multi-action that implements logic that is very similar to that of the SimpleFormController.
SimpleWebFlow Simple web flow implementation.
SubFlowBackNavigationExceptionResolver Exception resolver that tries to resolve navigation problems with sub flows resulting from the use of the browser Back button.
WebFlowCleanupFilter Servlet 2.3 filter that cleans up expired web flows in the HTTP session associated with the request being filtered.
WebFlowController Concrete controller implementation that uses a web flow to handle client requests.
WebFlowDtdResolver EntityResolver implementation for the Spring web flow DTD, to load the DTD from the classpath.
WebFlowMemento Externalized state of a web flow.
WebFlowMementoStack Stack of flow mementos.
WebFlowUtils Static utility methods used by the Spring web flow system and applications that use it.
 

Exception Summary
NavigationException Exception that is generated when a web flow encounters navigation problems, for instance when a state or transition cannot be found.
WebFlowException Exception that is generated when a web flow encounters an internal problem.
 

Package com.ervacon.springframework.web.servlet.mvc.webflow Description

Controller implementation for the Spring web MVC framework that handles requests using a web flow. For a detailed discussion of how you can use this controller, read Spring Web Flows: A Practical Guide.

The central client API is provided by the following classes and interfaces:

Web flows are defined in XML files that use the web flow DTD and should thus include the following doctype definition:

<!DOCTYPE web-flow PUBLIC "-//ERVACON//DTD SPRING WEB FLOW//EN" "http://www.ervacon.com/dtd/web-flow.dtd">
Consult the web-flow.dtd for an exact description of the syntax. The following is an example of a web flow definition for a flow that is roughly equivalent to that implemented by the SimpleFormController:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-flow PUBLIC "-//ERVACON//DTD SPRING WEB FLOW//EN" "http://www.ervacon.com/dtd/web-flow.dtd">

<web-flow name="Simple Form Flow">
	<start-state state="form"/>

	<view-state id="form" view="form">
		<transition name="submit" to="bindAndValidate"/>
	</view-state>

	<action-state id="bindAndValidate">
		<action name="bindAndValidateAct" bean="bindAndValidateAction"/>
		<transition name="bindAndValidateAct.ok" to="doSubmit"/>
		<transition name="bindAndValidateAct.error" to="form"/>
	</action-state>

	<action-state id="doSubmit">
		<action name="doSubmitAct" bean="doSubmitAction"/>
		<transition name="doSubmitAct.ok" to="success"/>
		<transition name="doSubmitAct.error" to="endError"/>
	</action-state>

	<view-state id="success" view="success"/>

	<end-state id="endError"/>
</web-flow>