HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML
 

The product was released in September 1998, but based on the information on the Web site, it's still undergoing development iterations.

Spirit is a presentation builder environment based on JavaBeans. It provides an extensive set of Bean-based objects (images), presentation tool transitions and effects, and also has the ability to "script" its objects using Java standard Bean interaction conventions. The product itself is partially built using Spirit, and its UI shows proof of this by providing more of a graphics workshop interface as opposed to the GUI builder interface.

Its installer utilizes InstallAnywhere, which created a shortcut to the application in the Start menu, but curiously didn't create a link to the uninstaller. The installation process installs JRE 1.1.5 but doesn't include the javac compiler required for its basic operations. Although the README states otherwise, a separate install of a JDK 1.1.x or JDK 1.1.x-compatible Java programming environment is required to make the product fully functional. When the demo version of the software doesn't have the proper key file installed, it just locks up and needs to be killed using the task manager (see Figure 1).

Figure 1
Figure 1:

I found the product interface busy at a screen resolution of 1024 x 768. Spirit utilizes three windows and several toolbars to present its information. The right-side window is the editor, the left-side window contains a folder-based view of the available shapes (more can be imported into the system using JavaBeans) and the bottom window contains a folder-based view of the current diagrams layout. I think the product would benefit if the folder-based view could be switched to tree-based view, because different sets of controls could then be visible at the same time. The editor window also serves as a runtime environment, presenting most of the actions on diagram without actually packaging it for the runtime environment.

The current clipboard content is visible in the upper left corner of the editor window, containing the image of the shape selected in the left window to be used in the current diagram.

You are well advised to take the product demo, "Let the Spirit Guide You," offered on the Welcome screen. It provides a good presentation of the product abilities. Considering the somewhat unusual interface of the product, you may want to spend some time reading the online help as well.

When I was creating a small sample diagram to better understand the product abilities, I ran into many small annoyances. The Refresh button is named somewhat misleadingly on the Properties dialog; it seems to be for restoring settings instead. The Properties dialog doesn't provide a clear indication for some non-modifiable properties. The Esc key is used to finish resizing an object, although it's mostly used to cancel moves within similar graphics products. Spirit claims that there are two ways of reviewing events - by using the debug feature called Review Actions, and from the Edit Actions menu option - but I could find no way to review the details on existing events (except possibly by running them?).

I noticed some focusing and repainting problems inside the Builder itself, which I'm not sure whether to attribute to Java AWT quirks or to the newness of the product. The right mouse button (popup menu) usage is inconsistent, e.g. you can't use it to call up the menu in the current diagram frame. The usual helper functions of graphical editing environments (e.g. line up, same size, etc.) aren't available either. This is because Spirit has a simple grid which only snaps to position when pasting new objects or resizing them, unlike other graphical environments which will snap them all. If the product targets a generic bean builder, LayoutManager-based positioning options should be available. There seems to be no provision for listing last accessed diagrams in the file menu.

The Player's size is 170 K, which allows deploying the generated diagrams via both intranet and the Internet. Utilizing HTML and Java Media Framework data type links and the Beans based environment provides a rich presentation environment not achievable in traditional presentation tools without custom development and special add-ons.

A few other interesting features of Spirit 1.0 include:

  • A geographically-based concept of a window moving over a large space containing information, thus saving screen real estate and providing some very smooth real-time zooming effects
  • Spirit is an object browser and is able to load other Spirit content without the browser needing to load a new HTML page
  • Tiny file sizes when deploying over the internet, as well as a zip format and a streaming option if deploying multiple presentations.
I found the WWW site busy and too colorful, concentrating on the company product(s), instead of associated information that would help site navigation. The site contains an extensive demo of Spirit which highlights the different areas in which the program is applicable.

At the time of this writing, the Player required a JDK 1.1.x-enabled browser, although I noticed some stability problems when using Netscape 4.5 on Linux. Considering Java's roots in the product, hopefully cross-platform support will soon be available.

About the Author
Gabor Liptak has been programming since 1984, and has been using high and low level object orientation design and implemantation for the past four years. E-mail him at [email protected]

 

All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.
  E-mail: [email protected]

Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.