Managed beans are Java classes that you register with the application using various configuration files. Managed Beans contain the data and underlying logic of the application, which can be accessed by the UI components on the page through bindings to bean properties. The managed beans encapsulate information that is used repeatedly.
Managed beans of any scope should be defined in the adfc-config.xml file. This has the following advantages:
All managed beans are handled consistently.
Managed bean definitions of session, application, and request scope can reside in any task flow, not just the top-level one. This allows for better encapsulation of task flows so that they do not have to depend on things defined externally to the task flow.