The Source for Java Technology Collaboration


 

Easy Wizard

Easy Wizard is a lightweight library for a Java web framework, which allows to define robust and controlled flow of application pages. Easy Wizard is primarily targeted on relatively short page sequences, known as wizards.

Easy wizard uses the same concept of Finite State Machine (FSM), as other flow engines. The major differentiator is that Easy Wizard integrates with the domain model, making synchronization between FSM and domain model a breeze.

  • Wizard state is stored completely on server, no hidden fields.
  • Wizard state is always synchronized with domain model state.
  • Wizard view is always synchronized with wizard state.
  • Back, Forward and Refresh buttons are safe to use.
  • A wizard can be reconfigured in runtime.
  • Wizard rules are defined completely in Java, no clunky XML configuration files, no server-side Javascript.
  • Wizard rules and domain model integration can be tested using base JDK classes only, without user interaction.
  • Self-contained, can be easily integrated into most Java frameworks.
  • Project Status

    Easy Wizard started up as a Struts library, and was refactored later for broader framework support. Currently the Struts integration is the easiest, the code is of reasonable quality. Exception handling may need some work. JSF integration works, but need some polishing. Spring and WebWork will be integrated later. Currently project is moving to java.net.

    Project homepage

    https://easywizard.dev.java.net

    Demos

    Live demo of New User Signup Wizard

    Documentation

    Online wiki documentation

    Articles

    Rule Engine HOW-TO, March 15, 2005
    UI Manager HOW-TO, March 29, 2005

    Downloads and APIs

    Struts Dialogs library, including support for Easy Wizard (compiled jars, source code, examples)

    Online API javadocs:
      Wizard interface
      Wizard implementation
      Struts Wizard Manager

    Dependencies: Struts 1.2.x

    Topic EasyWizard . { Edit | Ref-By | Printable | Diffs r3 < r2 < r1 | More }
     XML java.net RSS

    Revision r3 - 21 Jul 2005 - 22:09:00 - Main.michael_jouravlev
    Parents: WebHome