== Data Binding ==

 {{attachment:bindingconcepts.gif}}

The key data binding concepts in Oracle ADF are the following:

 Data Controls:: A data control abstracts the implementation of a business service, allowing the binding layer to access the data from all services in a consistent way. 

 Iterator Bindings and Control Bindings:: Bindings are lightweight objects that decouple back-end data and front-end UI display. An iterator binding provides a consistent way to work with a collection of data objects supplied by a data control. Control bindings provide a standard interface for UI components to interact with an iterator's data or to invoke "action" methods for preparing model data and handling events. Bindings also expose key metadata to simplify building dynamic, multi-lingual user interfaces. 

 Binding Containers:: A binding container is a named group of of related iterator and control bindings that you use together for a particular page (or panel) of your application. A binding container is also known as a "UI Model" since it provides the appropriate subset of model data for a specific UI. 

 Binding Context:: The binding context provides the data environment for your application. It contains all of the data controls and binding containers that your application can access. 

 {{attachment:uimodel.gif}}

When you drag and drop data-bound UI elements from the Data Control Palette to either the Visual Editor, Structure Pane, or the Code Editor, JDeveloper 10g will implicitly create bindings and a binding container to hold them if necessary.

<<BR>>
 See Also::
 * [[http://www.oracle.com/technology/products/jdev/collateral/papers/10g/ADFBindingPrimer/index.html|Oracle ADF Data Binding Primer and ADF/Struts Overview]]
