Struts Applications

Struts Flow



Struts Flow is a port of Cocoon's Control Flow to Struts to allow complex workflow, like multi-form wizards, to be easily implemented using continuations-capable JavaScript. It provides the ability to describe the order of Web pages that have to be sent to the client, at any given point in time in an application. The code is based on a proof-of-concept Dave Johnson put together to show how the Control Flow could be extracted from Cocoon.

While the initial target of the extracted Control Flow is Struts, the Flow code is reusable from other non-Struts environments. This means Control Flow could be used to drive non-Struts JSP applications, portlets, or even complex web services.


  • Easily script complex workflows
  • Full access to Struts features
  • Ability to run in non-Struts environments (uses Jakarta's Commons-Chain)
  • Includes Wizard library to help easily create complex wizards
  • Includes Wizard example
  • Includes Cocoon's number guessing game example

What's New

0.2 - September 10, 2004

  • Added wizard library to make wizard creation easy
  • Added wizard example
  • Updated and improved documentation
  • Fixed a few bugs

0.1 - June 3, 2004

  • Hooks into Struts' logging
  • Added continuation expiration system
  • Added support for JavaScript debugger
  • Improved Struts integration
  • Added full JavaDocs
  • Added many more configuration options

Initial Import - May 12, 2004

  • Example working
  • Struts integration functioning
  • Needs better Struts form integration
  • Needs to hook into Struts' logging


Struts integration requres Struts 1.1 or greater.

Still to Come

  • Better forms integration with Struts


The following examples show how Struts Flow can be used:


Please contact Don Brown with comments, and suggestions.

Valid HTML 4.01!Valid CSS!Built with Apache Forrest logo