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  >  

Abstract User Interface Markup Language Toolkit

A set of development tools and APIs for creating GUI applications that run in both the Java Swing and HTML environments.


Date Posted: February 16, 2004
OverviewRequirements Download FAQs Forum Reviews

Update: March 30, 2007

Version 6.3 includes several new features and improvements, most notably support for Eclipse 3.2.x and Rational Software Development Platform 7.0.

What is the Abstract User Interface Markup Language (AUIML) Toolkit?

The AUIML Toolkit provides software development tools that allow developers to write an application once and run it in Java™ Swing or on the Web without any changes. The AUIML Toolkit includes the AUIML VisualBuilder, which is an Eclipse-based visual panel editor built on top of the Eclipse Visual Editor Project. The AUIML VisualBuilder allows developers to easily build user interfaces and generate Java™ data and event-handling code for them. Additional Java code can be written to AUIML's API in order to control application flow, data validation, and to listen for events. Once the application is implemented, it can be deployed as a Java Swing application or as an HTML servlet without changing the application's code.

The current release of the AUIML Toolkit includes both a Java Swing Renderer and a Web Renderer. The Swing Renderer provides rich-client functionality for installed applications by using Java Swing technology to display the panels. The Web Renderer runs as a servlet and sends an HTML representation of the panel to the client browser, allowing the same application to run on the Web without any source code changes.

This toolkit runs on certain versions of Windows® and Linux® (see requirements).

How does it work?

AUIML is an XML dialect that is a platform- and a technology-neutral representation of panels, wizards, property sheets, etc. AUIML captures relative positioning information of user interface components and delegates their display to a platform-specific renderer. Depending on the platform or device being used, the renderer decides the best way to present the user interface to the user and receive user input.

The AUIML XML is created using the Eclipse-based AUIML VisualBuilder, which allows a developer to quickly build and preview user interfaces in the Java Swing and Web renderers. The AUIML VisualBuilder can also automatically create application launchers, data beans, event handlers, and help system skeletons for the user interface. Because it plugs into Eclipse, building the user interface and application code is an integrated process.

What's new in Version 6.3?

Version 6.3 contains many new features and improvements:

  • Virtual scrolling in Web-rendered large tables: The AUIML run-time environment currently supports retrieval of "in view only" row data for large tables. The large table implementation has now been extended to retrieve "in view only" row and column data for large tables. Scrollbars are provided for scrolling the table data vertically and horizontally. As scrolling actions are made, requests for additional data occur.
  • Table cell actions not added to table context menu: When a table cell has one (and only one) action assigned and that one action is set as the default action, the table context menu will not be updated. This applies only to the Web Renderer.
  • Table column dynamically word-wrapped: The AUIML Web Renderer has been updated with a control override property called Wrap Column Header that will enable dynamic word-wrapping of table column headers. With this new style property set to true (enabled), the filter row will also wrap.
  • Ajax support: Ajax support has been enabled for AUIML in the following controls: regular tables, trees, tree tables, property sheets, tabbed panes, list boxes, combo boxes, check boxes, radio button groups, wizards, and advanced wizards. Ajax support is turned off by default. The application developer must explicitly turn on Ajax support in the web.xml or portlet.xml deployment descriptors. In addition, the application developer can turn Ajax on or off on a control-by-control basis. For additional information, please refer to the AUIML developer documentation.
  • Nested controls in radio button group are enabled correctly: Support is now included for enabling and disabling nested controls within a radio button group.
  • Context menus are now accessible via the keyboard in Swing tables: Use Shift+F10 to display the context menu for a table cell or table.
  • Parent node descriptor now accessible for tree control: Parent nodes for tree controls are now accessible using set<Attribute_Name>TreeParent(NodeDescriptor parent) method.
  • Support for HTML tags in hyperlinks: HTML tags are now supported in hyperlink controls in the Web Renderer. In the Swing Renderer, the HTML tags are removed from the hyperlink.


About the technology author(s):
This technology was developed by the AUIML Development team at the IBM Rochester lab. The team focuses on simplifying the development of user interfaces and integrating the administrative interfaces of products.


Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
Rational is a trademark of IBM Corporation in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.

Download now Download now

Related technologies

For platform(s):
Multi-Platform

For topics:
Eclipse, Java technology, renderer, Swing, utilities, XML


Related resources

Software investment protection using AUIML

Get started with the AUIML Toolkit

developerWorks Java technology zone

Press Articles

 

    About IBM Privacy Contact