Flux - The Smart Struts Config Generator

The Flux project
SourceForge.net Logo


Flux is a free open source Java tool licensed under the BSD license.

It supports the model-driven design of a Struts 1.1 web application by repeatedly (re-)generating the struts-config.xml and the struts-config-<module>.xml files from a set of UML activity diagrams.

Diagrams may in principle be drawn with any appropriate tool. The current distribution of Flux is, however, restricted to using Rational Rose 2002 or 2003 as the graphical front end, from which the diagrams can be exported using the Rose add-in Chameleon, which is part of the Flux distribution since version 1.1 to enable 'multi-instance modelling' (the free Unisys XMI add-in is also still supported, see the Rational Rose tool guide for more). Support for other UML tools like Poseidon e. g. may be implemented on demand.

Flux is distributed as a convenient Eclipse plug-in but can also be used standalone from the command line.

As Flux does not provide the diagram editor itself but is designed to be open for arbitrary third party drawing tools it only requires a minimum of flow chart capabilities from any of these. So it concentrates on generating the flow skeleton sketched as a series of diagrams and expects the user to manually enrich the generated struts-config-<module>.xml files with an editor of choice.

If you later change the flow skeleton in any of the diagrams you simply re-generate the struts-config-<module>.xml file. Manual edits to the struts-config-<module>.xml file you made in the previous iteration are then preserved in the newly generated version by Flux.

The Flux online help provides a user guide including examples and, additionally, a developer guide for those who want to look behind the scenes and possibly change or extend the source code.

Copyright 2003, 2004 by Matthias Burbach