ADF task flows provide a modular approach to define control flow in an application. Instead of representing an application as a single, large JSF page flow, you can break it up into a collection of reusable task flows. In each task flow, you identify application activities, which are the work units that must be performed for the application to complete. An activity represents a piece of work that can be performed when you run the task flow.
The ADF task flow offers the following advantages over standard JSF page flows:
You can break the application down into a series of tasks, instead of representing the entire application in a single page flow.
You can use activities other than pages in a task flow.
You can navigate between activities, not just pages.
Task flows are modular and reusable within an application or in different applications.
Shared memory scope enables data to be passed between activities within the task flow.
The ADF controller supports two types of task flows:
Unbounded task flows
ADF-bounded task flows