eFace is the Worldwide First XAML solution for Java. It provides an unified programming model for building both rich client application and RIA. It keeps insulation for applications from the technology/environment change such as Swing, SWT or Web/Ajax.

Data binding

Data binding is the process that establishes a connection between the application UI and business logic. If the binding has the correct settings and the data provides the proper notifications, then, when the data changes its value, the elements that are bound to the data reflect changes automatically. Data binding can also mean that if an outer representation of the data in an element changes, then the underlying data can be automatically updated to reflect the change.

The data binding feature is the key differentiator between most of UI framework and Presentation Framework. The first category takes care of only the UI aspect and event handling. The second goes further to propos a powerful and out-of-box data-visualization solution.

eFace is part of the second category, its data binding provides a simple and consistent way for applications to present and interact with data. Elements can be bound to data from a variety of data sources in the form of Java POJO objects, SDO, XML and Web Service. To reach this primary goal, it implements the following concepts:

1. MVC paradigm

eFace supports both automatical and manual property change notification. Its automatical notification doesn't require any modifications on Java model.

2. Binding expression

Two methods of the binding expression are supported: markup extension expression and XML expression. All standard binding mechanisms are supported with RelativeSource and complete path expression: Binding, MultiBinding and PriorityBinding

3. Binding to collections

Collection Views, Sorting, Filtering, Current Record Pointers and Item Data Templating

4. Data conversion

eFace uses automtically the system convertors and custom data type convertors for data display and data update.

5. Data validation

eFace data binding model allows developer to associate some objects of type ValidationRule with your Binding object. They are called when the data of corresponding type get changed.

6. Error handling and visual feedback

Once an error occurs during the validation, the error can be feedbacked to UI by: border decoration, ToolTip or message dialog.

Please visit Microsoft MSDN Web for detail information about XAML and WPF.