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

Sun Microsystems Inc.
901 San Antonio Road
Palo Alto, CA 94303
Web: http://forte.sun.com/eap

Test Environment
Dell 410 Precision CPU (450MHz), Windows NT Workstation Service Pack 5, 256MB RAM

Specifications
Platforms: Solaris 8
Red Hat Linux 6.2
Windows 98 NT/2000
Pricing: Community Edition freely downloadable.
Enterprise Edition is $1,995/seat, 30-day trial is freely downloadable.

In my opinion there have always been two types of Java application developers. The first type prefers to use a text editor, compiler, and debugger to get the job done. Once upon a time, this was the only way to write code, from COBOL and Fortran all the way through C. The age of the fourth-generation language introduced the concept of a specialized developer "coding tool," which we now refer to as an integrated development environment (IDE).

The second type of programmer prefers to use an IDE to develop Java code. There's no right or wrong way here - it's all a matter of preference. Initially, most of the Java IDEs on the market supported the Windows operating system as a development platform, but newer Java IDEs are written in Java. This makes them highly portable from platform to platform. Sun offers its own such IDE in the form of Forte for Java. I recently looked at the Early Access Edition of Forte for Java, 3.0 release, Enterprise Edition.

Forte for Java - Two Editions
Sun's Forte for Java is based on two sets of technology that Sun acquired, Forte Software's Forte and NetBeans' NetBeans Developer. Forte Software predates Java. They were one of the first companies to tackle the complex issue of distributed application processing. NetBeans was a Czech-based company that developed one of the first IDEs written entirely in Java. Sun acquired Forte Software for Forte's server-side technology and code-generation expertise and they bought out NetBeans for their Java IDE. Forte for Java - or FFJ - is the resultant offspring of these two exciting technologies.

FFJ traditionally comes in two versions, the Community Edition and the Internet Edition. The Community Edition is offered free-of-charge on the Sun Web site and is equipped with the complete IDE and a built-in Web browser and Web server. You can use this standard Java IDE to build Java applets, Java clients, JavaBeans, and standalone Java applications. The Enterprise Edition is targeted at enterprise developers and includes additional functionality such as Tomcat integration, EJB development, and database-aware components. The updated release includes both the Community and Internet Edition functionalities as well as new functionality. FFJ Enterprise Edition comes equipped with modules for EJB creation, application server integration, and an enterprise services presentation toolkit.

Working with FFJ
The Forte for Java Enterprise Edition 3.0 release comes packaged in an installation wizard. The install process is relatively simple and I was able to get the product up and running in a few minutes. FFJ 3.0 has a plethora of features, and it will take you awhile to get a handle on all the ins-and-outs of this comprehensive tool set.

If you are coming to FFJ from another graphical IDE environment, I suspect you'll find most of the panels and forms to be well organized. However, if you're coming from the editor/compiler environment, be prepared to be overwhelmed by the sheer number of choices in the FFJ IDE. This is typical for most Java IDEs. The theory is that the IDE is not really useful unless it covers all possible bases. Java continues to grow in scope and complexity, and experienced Java developers won't be surprised by the complexity of the IDE environment. However, the number of switches and knobs within the IDE might be overwhelming for newly minted Java programmers.

The FFJ 3.0 release comes equipped with a short tutorial and some limited sample code. If the sample projects don't appeal to you, you can use FFJ with your existing code. FFJ 3.0 can input projects from other Java IDEs such as Microsoft J++, JBuilder, and VisualCafé (WebGain). Thus I was able to grab an old JBuilder project I had lying around and move it into FFJ without much difficulty. It's definitely a programmer's IDE. Developers not familiar with Java are likely to get lost in an IDE that's as comprehensive as FFJ. The product includes numerous wizards for managing projects and generating code, but you'd better be familiar with the basics of Java before you dive into creating your own projects. (This is definitely a personal opinion and does not reflect on the capabilities of FFJ.) The question for new Java developers is whether a comprehensive IDE helps or hurts their learning curve. Once you're familiar with Java (even to a limited degree) the value of a powerful IDE is not open to questions.

Forte's wizards include:

  • JSP and servlet
  • XML and DTD
  • AWT forms
  • Ant projects
  • Beans
  • CORBA
  • Classes (applets, classes, etc.)
  • Database (forms and database schema creation)
  • Sample forms
  • JAR packaging
  • RMI
  • Swing forms
FFJ uses the familiar "workspaces" and project concepts, so it's a simple process to organize your tasks and work on multiple, independent projects at the same time. You can organize the various task panels (as shown in Figure 1) to match your own preferences, and dock and undock windows as well. Through the Form Editor you can design the graphical display and view/set properties in the Component Inspector, and modify the resulting Java code in the Source Editor.

Figure 1
Figure  1:

Although the FFJ environment is somewhat sluggish from a GUI perspective, the source code editor has some nice features, including syntax highlighting and dynamic code completion. You can change the fonts and colors to match your own personal preferences. (Opinions vary on the utility of code completion, but I make use of this feature extensively when writing code.) Within the GUI editing environment Forte provides a "connection capability" for generating code. For example, you can add a button to control a chart object by dropping the button on the form and using the connection wizard to link the button to the chart. Forte's Connection Wizard walks you through the process of selecting events and generating the proper Java code. Sun provides a valuable demonstration of these two features (and more) on the Forte Web site, and I would encourage you to take this short online tour.

When it's time to test your code, the debugging workspace comes into play. It's nicely laid out and provides all the standard Java debugger capabilities (including remote debugging and JPDA) - and you can customize the debugger for your environment as needed.

One of the nicest features that I worked with is the Update center (see Figure 2). It's available to all registered Forte for Java users and provides a library of updates and modules that can be plugged directly into the FFJ IDE. These modules can include everything from EJB builders to application server interfaces. This is exactly the type of feature that leverages the power of the Internet. Developers need not stuff their local machine with a whole host of add-ons and features they don't need. Rather, they can connect to a central site and download functions as necessary - making the Forte IDE highly extensible and customizable.

Figure 2
Figure  2:

JDJ Product Snapshot

  • Target audience: Java Developers
  • Level: Mid-level to advanced
  • Pros: Multiplatform support for IDE, extensibility of the IDE and Web-based updates, integration with Sun ONE
  • Cons: IDE tends to be sluggish, Java newbies may be overwhelmed with all of the features
Summary
FFJ 3.0 is a strong offering in the Java IDE category. Its ability to run on multiple operating platforms and support Internet-based updates will find favor with most Java developers. Java newbies may find the IDE slightly overwhelming, but experienced Java developers will appreciate the wealth of features and functions within FFJ.

Author Bio
Jim Milbery is an independent software consultant based in Easton, Pennsylvania. [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.