Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: for the plan.

Jump to: navigation, search

JFace Data Binding

JFace Data Binding is a multi-threaded set of abstractions that allow for automated validation and synchronization of values between objects. This is commonly used for, but not limited to, the binding of user interface components to model attributes. The core concepts behind the project are Observables and Bindings. We provide IObservable implementations for SWT, JFace, and JavaBeans but the core is void of references to these in anticipation of implementations for other projects (e.g. EMF, Swing, etc.).

JFace Data Binding
How to Contribute

Tutorials & Presentations


  • Observable: value, list, set, or map whose state changes can be observed
  • Binding: keeps the state of two observables in sync, uni- or bidirectional
  • Data Binding Context: a container for bindings
  • Converter: used by a binding to convert values
  • Validators: used by a binding to validate values
  • Realm: serializes access to observables (every observable belongs to a realm)
  • Tracked Getter: makes the system aware of observables that a piece of code depends on
  • Master-Detail: used when you want to bind to attributes of the currently selected object, rather than a fixed object


Contact Us

The JFace newsgroup is the place for discussions and questions relating to JFace Data Binding. When posting please prefix the subject with "[DataBinding]" to allow us to easily find posts related to the project.

Design discussions and bugs are located on Eclipse bugzilla with a the values...


Like posts to the newsgroup when logging bugs please prefix the summary with "[DataBinding]" to allow for easier identification.

Getting Involved

There are many ways to get involved with JFace Data Binding. To find out how you can contribute see How to Contribute.

Historical Documents

Project Release Status

JFace Data Binding 1.0 was released with Eclipse 3.3, Europa. The Eclipse 3.3.1 release (Europa Fall Maintenance Release) contains a number of bug fixes.

Back to the top