SwiXAT   The Swing-XML Authoring Tool



  • Mar 9, 2005 - The first official version 0.2.0 has been released! Download it


SwiXAT is a Swing-based authoring tool for the quick and easy development of graphical user interface (GUI) Java applications. It extends an external XUL (XML User-interface Language) library, SwiXml, to implement a complete MVC (Model View Controller) framework, and provides advanced scripting features.

It takes a lot of work to develop a Swing application, laying out and configuring GUI components, and then integrating them with the application functionality. SwiXAT addresses both of these issues. GUI components can be described in XUL documents, simplifying the process of adding and changing the application content and layout. SwiXAT further refines this approach by allowing the automated implementation of an MVC framework, so that component views interact with data models without the need for extensive event handling routines.


Designing layouts in XUL form allows components to be easily defined as a pure text representation. Component attributes, such as borders, size and orientation can be configured quickly and conveniently. The hierarchy of the application components is clearly described by the XUL document tags. Logical relationship handling exists, for example Button tags placed within a ButtonGroup tag are automatically assigned to that group.

Importantly, the components defined in this manner can be named, allowing the application to reference them. The components are created and bound at run time through the XUL library.


The MCV pattern is well documented on the internet. A brief description of Models, View and Controllers follows:

  • Models represent objects and entities handled by the application, the internal representation of the business model.
  • Views represent the user interface (frames, panels, etc) containing all the controls available (buttons, labels, text boxes, etc).
  • Controllers act like a gateway between the View and the Model. They provide a mechanism to notify the Model about modifications made by the user through the View, and to display changes to the Model in the corresponding View.

A concise summary of the MVC framework and how it relates to Java can found be at JavaWorld.

SwiXAT allows the virtual components defined in XUL to act as views of an MVC system. The model implementations are defined in scripting files.


Development Site
SwiXAT is hosted at SourceForge. The project development site can be found here.

Thanks To
SwiXml BeanShell
Spring Framework JXPath
SourceForge eXTReMe Tracker
Summary | Contact