Create UltraLightClient user interfaces using markup language

ULCXML is an engine that creates UltraLightClient (ULC) user interfaces from XML files. The whole UI code is described in an XML file (or split over serveral files), which is parsed at runtime and rendered into Java objects. ULCXML also includes XML Schema support, which means that the developer can write GUIs using code completion.

The idea of constructing user interfaces based on XML documents is not new. Projects like XUL and XAML already use this concept. SwiXml, SwingML and gui4j, to mention a few, have applied the approach to the Java Swing World.

The XML dialect used for ULCXML is related to the dialect used in the SwiXml project, i.e. Java class names are mapped to element names, property names translate into attribute names. The dialect used in ULC XML has been modified slightly to make it easier to use. Developers familiar with SwiXml will have little effort learning how to use ULCXML.


ULCXML is a small library for UI generation. And that's all it does. All business related logic like table models, behavior of enablers, etc has to be coded in Java. By default all basic ULC widgets are supported. Like the ULC widget set, the ULCXML framework can also be extended with tags to include custom components.


An XML editor that supports schema validation is recommended. 

About UltraLightClient

UltraLightClient is a library to build rich internet applications. It delegates everything it possibly can to the Java EE and Java SE infrastructure. It uses Swing on the client, standard communication protocols set by the Java EE container, and standard lifecycle management on the server. It closely follows Java standards and can be easily integrated into existing web platforms.