views:

1512

answers:

5

I'm looking for a wizard library/framework for Java, but it seems all the ones I can find are abandoned and/or lacking in enough documentation to use quickly. Here's the ones I've found, and all appear to be no longer maintained.

I tried using SwingLab's Wizard, but I ran into an issue that was not explained in the documentation and I received no response from the maintainer. I'm hoping someone else knows of a good replacement before I need to re-invent the wheel.

Edit: It appears that the current state of Java does not provide such a framework, and I'll roll my own. Thankfully my needs are extremely limited (a 2 pane wizard).

A: 

A couple of ideas:

  • Have you seen this article about creating dialogs using the java swing api?

  • There is also NSIS (Nullsoft Scriptable Install System) is a professional open source system to create Windows installers. It is designed to be as small and flexible as possible and is therefore very suitable for internet distribution.

iros
+1  A: 

There is one in the JFace library (that powers Eclipse) here. But it is for SWT rather than Swing.

Bahadır
+1  A: 

If you're writing a web application, Spring Web Flow would be an excellent choice. It comes with a lot of nice features out of the box like support for the back button and is very extensible as you'd expect.

Andrew Swan
Wizard: A step by step guide for the user. Also see http://en.wikipedia.org/wiki/Wizard_%28software%29
Kissaki
+1  A: 

I ran into the same problem about a year ago, and developed CJWizards to fit my need. It's more general-purpose than the other wizards I've found.

The project is a bit stale because I haven't needed it recently, but I'd be happy to help anyone who uses it get going.

It supports bi-directional navigation (so the user can go back, fix something, then move forward again, maintaining the answers they provided on the first pass), and makes it substantially easier to design wizards that branch (when compared with other wizard frameworks I've seen).

The dialog layout is separated into a few layers, so you can add wrapper content, such as the navigation bar on the left of this screenshot to all the steps, or stick in a logo, move the buttons, etc. according to your needs.

Each page of the dialog is essentially a JPanel that you add named widgets to -- the framework looks for named widgets, and monitors them for data which is stored in a map of (widgetName, value).

rcreswick
A: 

I've tried three frameworks before to come into JWF (Java Wizard Framework, the first you enlisted).

It's definitely the clearest and the simplest to use. However, it lacks documentation but if you look at the example provided in the release jar you can use it without any pain.

BangTheBank