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

Recently, Microsoft introduced version 1.1 of Visual J++, its Java development environment. This latest version of Visual J++ builds on the first edition and includes an improved customizable integrated development environment, an integrated debugger, more wizards which assist in the development process, improved database support and an integrated help system. The Visual J++ Java compiler also continues to be one of the fastest available on the market, with the ability to compile over 10,000 lines per second.

As with any Java compiler, cross-platform support and Java language compatibility are of major concern. The Visual J++ Java compiler continues to produce 100 Percent Java compatible code that can be executed on any platform which can run Java. Visual J++ also includes support for Microsoft specific extensions, including ActiveX and COM (Component Object Model). As shipped, Visual J++ supports version 1.02 of the JDK (Java Development Kit).

New Features
This version supports a variety of new features. The integrated development environment has been upgraded and now includes support for macro scripting with VBScript (Visual Basic Script Edition). VBScript helps developers automate common development tasks. The most significant new features of Visual J++ are the Database and ActiveX Wizards. Wizards help to automate complex development processes into a visually based step-by-step process.

Database Wizard
Visual J++ includes database support, with the DAO (Data Access Objects) and RDO (Remote Data Objects) components. In the previous version of Visual J++, database integration was a complex process to get started. This release includes the Database Wizard (see Figure 1), which automates the process of accessing an ODBC (Open Database Connectivity) data source, such as SQL Server, Oracle, Microsoft Access, and other ODBC compliant databases.

Figure 1
Figure 1:

The Database Wizard allows you to select the data source, table and fields you want included in your application, and then generates a Java application template, which is ready for your customization. It would be much more useful if the Database Wizard could use multiple tables or allow you to specify a SQL query. However, it's a huge step up from the previous version, which required you to develop any database access from scratch. It's important to note that Visual J++ can also use JDBC (Java Database Classes) , the ADO (ActiveX Data Objects) and OLE DB to access database and non-database data sources.

ActiveX Wizard
Love it or hate it, Visual J++ includes integrated support for ActiveX. ActiveX is a set of technologies which is an extension of the Object Linking and Embedding (OLE) and the Component Object Model (COM). COM provides the low level object access infrastructure for OLE and ActiveX objects. ActiveX components are very much like OLE components. They are designed to be smaller and faster than OLE components and specifically engineered to be embedded in Web pages.

The ActiveX Wizard (see Figure 2) simplifies the process of turning a Java class into an ActiveX component. An ActiveX component requires an Interface Definition Language (IDL) file that is compiled into a Type Library. The Type Library describes the methods available in the ActiveX component and how to access them. Previously, this task had to be performed completely by hand. The ActiveX Wizard automates what could otherwise be a very tedious process. Visual J++ also provides the ability to access ActiveX and COM components developed in other languages.

Figure 2
Figure 2:

Development Environment
Visual J++ shares the same integrated development environment (IDE) as Microsoft Visual C++, Visual Interdev and Visual SourceSafe. The Developer Studio development environment (see Figure 3) provides a complete customizable environment. The tool bars can be customized or hidden and the Tools menu item can be modified to include your personal development tools, such as your favorite Web Page editor. Visual J++ allows your Java applications to be created and managed as projects. A project is the collection of files that comprise your application.

Figure 3
Figure 3:

Project Workspace
The Project Workspace window allows you to manage the classes and files that make up your Java applications and is made up of three views: ClassView, FileView and InfoView. The ClassView allows you to view your Java application as a tree of related Java classes. You can click on a class to expose its methods and variables and by doubleclicking on a variable or method you are quickly moved to the associated source code. The FileView allows you to view all of the files that make up your Java application, including Java source files, HTML files and other resources. The InfoView gives you a hierarchical view of the on-line help system.

Visual J++ provides a number of Wizards which help to automate many aspects of the Java application development process. Besides the Database and ActiveX Wizards, Visual J++ provides the Java Applet Wizard with the ability to generate an applet shell, complete with a simple Web page, and the necessary components for multi-threaded support and simple animation; the Resource Wizard converts standard Windows resources into Java source code; the Java Type Library Wizard automates the process of creating Java classes which can be used to access and control ActiveX components.

The Visual J++ debugger is one of the more powerful Java debuggers you're likely to encounter. The debugger provides the ability to debug multiple Java applets and also multi-threaded applets simultaneously. The Visual J++ debugger also provides the ability to debug ActiveX components developed in Java. The standard visually based debugging features aren't lacking either. The Visual J++ debugger provides a call stack window; variable watch window; the ability to set and remove break points on methods, byte codes, when certain conditions exist, and while the applet is running; the ability to step through you source code one line at a time, and by Java byte codes.

To use Microsoft Visual J++ you will need the following:

  • Microsoft Windows 95 or Windows NT Version 4.0 or later
  • A system with a Pentium processor. At least 12 MB of RAM for Windows and 20 MB of RAM for Windows NT
  • At least 33 MB free disk space for a minimum installation, 43 MB for a typical installation, and 50 MB for a full installation
  • A CD-ROM drive
  • A Microsoft compatible mouse
  • A VGA or higher resolution monitor
Strengths and Weaknesses
Hits: IDE flexibility and ability to be customized; development environment which is familiar to Visual C++ and Visual Interdev users; fast compiler; project-based source code control; Wizards that automate tedious tasks; VBScript macro support; Database Wizard automates RDO data access; ability to debug multiple applets at the same time; ability to view byte codes when debugging; ability to debug applets running in a browser (including Internet Explorer and Netscape Navigator via a plug-in); automatic basic HTML page generation for your applets; good on-line and hard copy documentation.

Misses: Visual J++ Java compiler does not support JDK 1.1 as shipped (a beta version of the Visual J++ compiler which includes JDK 1.1 support was recently released); database support provided by the Database Wizard needs to be improved; lack of Windows-based Java interpreter for standalone applications.

In the emerging area of Java development environments, I believe that Visual J++ version 1.1 stands above the rest of the pack. The Visual J++ debugger is one of the most powerful you're likely to encounter. With good compilation speed and Wizards which help to speed tedious development tasks, Visual J++ helps Java developers get their work done quickly and efficiently. Opinions may vary widely on the topic of ActiveX, but Visual J++ provides the best path to ActiveX integration from Java. There are still a few rough edges here, including lack of JDK 1.1 support and an inherent weakness in the Database Wizard, but overall Visual J++ version 1.1 is a great vehicle for the espresso highway.

Microsoft Visual J++ version 1.1 is currently available as a standalone product and as a component of Microsoft Visual Studio 97. Visual Studio 97 is a collection of Microsoft development tools which includes: Visual C++, Visual J++, Visual Basic, Visual Interdev, and the Microsoft Developer Network CD. Visit the Microsoft Visual J++ Web site at http://www.microsoft.com/visualj for the latest information.

Next Month: A discussion of the Microsoft 2.0 Java SDK Beta, which includes support for the 1.1 JDK.

About the Author
John W. Fronckowiak is the author of "Teach Yourself Database Programming With Visual J++ In 21 Days", Sams.net Publishing. Send your ideas and comments to John 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.