The JStateMachine aims to allow user interface
designers or developers to design and control a UI
using a UML statechart. The project currently
supports both Swing and servlet/JSP UIs, as well
as exception handling, access control, and I18N.