IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  Java technology  >  

IBM Reflexive User Interface Builder

An API and application for specifying and rendering Java rich-client GUIs based on an XML script.


Date Posted: July 16, 2004
This is an ettk technology.
OverviewRequirements Download FAQs Forum Reviews

Update: February 10, 2006

Version 1.0.1: Validation function has been moved to RAVEN, a new alphaWorks technology. RIB now supports the launching of RIB documents. Command line version of RIB is no longer available or supported.

What is IBM Reflexive User Interface Builder?

The IBM Reflexive User Interface Builder (RIB) is an application that constructs and renders graphical user interfaces (GUIs) for Java™ Swing and Eclipse Standard Widget Toolkit (SWT) based upon a descriptive XML document. (Java Swing is a rich GUI toolkit included with Java that provides operating system-independent GUI components. Eclipse SWT is an add-on GUI toolkit that takes advantage of host operating system GUI components for maximum host integration.) RIB is both a specification for a mark-up language in which to describe GUIs and an engine for creating (and, if desired, rendering) them. This application can be used as a stand-alone application for testing and evaluating basic GUI layout and functionality, or it can be used as a library within the context of a Java application for creating and rendering GUIs for that application.

Version 1.0.1 of RIB marks a split of functionality. The validation function has been moved to RAVEN, a new alphaWorks technology. RIB is now specifically for creating and rendering Java rich-client GUIs based on a description specified in an XML document.

This technology runs on Java 1.4.2 and above and Eclipse 3.0.1 and above. RIB currently supports only Windows NT and Windows XP.

How does it work?

Although other XML script-driven, Java-based GUI engines have been developed, the power of RIB's GUI creation approach stems from its reliance upon the Java Reflection API, which allows classes to be introspected in order to reveal their fields, constructors, and methods. Proceeding in this way, RIB can create and render GUIs based solely upon the information in an XML document. This document need not conform to any pre-defined DTD or XML schema.

Further information is available in this article: Introducing the Reflexive User Interface Builder. Please note that this article is based upon an older version of RIB.


About the technology author(s):
Barry Feigenbaum is a member of the IBM Worldwide Accessibility Center, where he is part of the team that helps IBM make its own products accessible to people with disabilities. Dr. Feigenbaum has published several books and articles, holds several patents, and has spoken at industry conferences such as JavaOne. He serves as an Adjunct Assistant Professor of Computer Science at the University of Texas, Austin. He has more than ten years of experience using object-oriented languages such as C++, Smalltalk, Java, and Jython. He uses the Java language and Jython frequently in his work. Dr. Feigenbaum is a Sun Certified Java Programmer, Developer, and Architect.

Michael Squillace is a software engineer at the Worldwide Accessibility Center where he contributes to the accessibility of IBM products and services. He has over five years of object-oriented programming experience, is a Sun-certified Java Programmer, holds several patents, and has a Ph.D. in philosophy from Michigan State University and a B.S. in computer science from the University of Texas. He is also blind.

The authors of this technology may be contacted through the discussion forum.

Download now Download now

Related technologies

For platform(s):
Java

For topics:
accessibility, rendering, Standard Widget Toolkit (SWT), Swing, user interface, visual impairment


Related resources

Introducing the Reflexive User Interface Builder

Introducing the Eclipse-based Reflexive User Interface Builder

developerWorks Java technology zone

Java tutorials

Open source projects

JARS.com

Press Articles

 

    About IBM Privacy Contact