Powersoft PowerJ packs features for Java development

In recent years, client/server technology has involved increasing use of the Java programming language. Many vendors have sought not only to realize the perfect rapid development environment but also to seamlessly integrate this application with the current database application craze.

In the case of Powersoft PowerJ, Sybase Inc., Emeryville, Calif., has left virtually no enterprise stone unturned in packing most leading technologies into its IDE.

PowerJ is one of a few Java development packages aimed towards high-end and otherwise advanced business solutions. In addition to the massive PowerJ IDE, the enterprise kit bundles Sybase's SQL Anywhere (to be known as Adaptive Server Anywhere in future releases), NetImpact Dynamo (recently renamed to PowerDynamo), Jaguar Component Transaction
Server (CTS), ObjectCycle and InfoBase.

Adaptive Server Anywhere is a standalone

Sybase Inc.
Emeryville, Calif.
800 8-SYBASE

database server designed to replicate SQL data for downloading and testing on a development machine. PowerDynamo and Jaguar CTS focus on the rapidly expansive middle tier of the enterprise computing world.

PowerDynamo is a server-side engine for Web-based computing which can handle complex database transactions. Jaguar, on the other hand, is focused mainly on creating distributed, multithreaded server applications for handling data through clients. ObjectCycle, a source-code control system (SCCS), and InfoBase, a project planning tool, are designed to help coordinate team development efforts. All of these members of the Sybase family serve to enhance the versatile deployment that can be accomplished with PowerJ.


Within the PowerJ IDE, a remarkable degree of attention to detail and flexibility is evident. While Java may not be at the point where source-level editing is never needed to tie objects and their events together, PowerJ eases the potential for awkwardness at every step.

There is an expansive array of wizards and sample projects to turbocharge the initial creation of a Java applet. Figure 1 shows one wizard, the Form Wizard, and the range of form prototypes it is capable of creating. The environment makes consistent and thorough use of drag-and-drop programming technology. PowerJ is one of the only suites on the market today which allows for easy migration of Java 1.02 projects to the newer version 1.1 of Java. In most cases, this is as easy as a toggle on the "save as" dialog window.

Fig. 1 -- For Sybase's PowerJ, the visual canvas on which the developer can lay out components is quite extensive.
The main user interface of PowerJ is a blank "form" which can be an applet of Java 1.02 or 1.1. This is the visual canvas on which the developer can lay out components which include, in addition to all standard AWT classes, many powerful database, network and mail widgets from JScape. In fact, any additional Java packages can be registered with PowerJ and added to the toolbar, which is completely customizable.

Deployment of forms created in PowerJ is most conveniently oriented towards integration with a Web site or standalone Web page. The PowerJ WebApplication target is a powerful tool designed to seamlessly integrate the client and server components of an enterprise Java application rather than the developer having to keep track of these different elements.

All Java components are available from a stylish toolbar that groups buttons within layered tab cards. The form allows for objects to be placed anywhere and resized at will without ever having to touch the complicated code for Java layout managers (GridBagLayout in particular). In addition to an elaborate "properties" dialog box for each component created on the canvas, an "object inspector" can also be pulled up at the click of a mouse which lists all Java source-level events and properties in a programmer-friendly table where their values can be modified freely.

When Java source editing is in fact needed -- and it will be required often (though impressively less so than with most "visual" Java IDEs on the market today) -- PowerJ does wonders to ease the pain associated with this task.

Components can be dragged into the source window where their actual names will be de-referenced for use in the code. There is also a "reference card," which is a pop-up window with expandable tree representation of all registered programming packages. This can be used to scan through the class hierarchy to find the appropriate class or method to insert in an existing component. Figure 2 shows a sample editing session, with a drag-and-drop window and associated Java code. Note how the extensive toolbar has changed since the set of toolbars shown in Figure 1; the on-top toolbar contains the most relevant tools for the current activity.


While PowerJ is very competitive in its class in terms of a visual development interface, it leaves most of the competition in the dust when it comes to integrating databases into the Java applets. As would be expected from the company that created PowerBuilder, PowerJ inherits industry leading point-and-click SQL programming from its sister suite.

A Visual SQL Query Editor allows the developer to build procedures by visually selecting data and setting up display and updating properties without touching code. Database server access is provided primarily through Sybase's JConnect, which is an implementation of the JDBC standard. Additionally, PowerJ includes support for Enterprise JavaBeans to use in creating stored procedures on the server side of the transaction.

PowerJ incorporates an intricate series of visual Java components for working with databases. Although manipulating SQL data is phenomenally intuitive with PowerJ, getting to it in the first place is not always as easy as it should be. For example, there is no one-step procedure for grabbing tables from any ODBC data source.

Jaguar CTS (which is in beta for the current PowerJ bundle), while holding much potential for the future of transaction management, crashed while testing. A PowerJ implementation of PowerBuilder's extremely popular DataWindow utility is promised but not included in the current release.

Powersoft has included everything but the kitchen sink in PowerJ's support for leading industry standards in its vast scope of features. Corba is supported, as is ActiveX (components of both can be dragged and dropped into forms).

There is a sophisticated debugger included in PowerJ which allows access to bytecodes and can display error messages in context for quicker error recovery. NetImpact Dynamo offers much in the way of Web server versatility (NSAPI and ISAPI are also supported), but still leaves much to be desired in terms of rapid development without tedious script editing. Wizards abound for WebApplication targets, database grids and details as well as JavaBeans.


PowerJ yields amazingly few roadblocks to painless enterprise development in a market which is becoming crammed with such be-all Java development packages. Once all of PowerBuilder's legendary SQL interface is integrated into PowerJ, it will continue to place itself one step ahead of the pack. It already has the advantage of a slick development interface which is not burdened with the inherent clumsiness normally found with most young Java construction tools. With an already impressive set of features and usability and the backing of Sybase's powerful database and development utilities, PowerJ is destined to become a force to be reckoned with in the enterprise world.