Sun harnesses the power of Java for the enterprise
Java Studio Creator empowers developers to design dazzling apps
During the past year java vendors have heard an increasingly insistent drumbeat from developers: Simplify enterprise Java. J2EE, the rich but extraordinarily complex set of Java server technologies, is proving intractably complicated. As a result, developers are finding alternative Java solutions to their enterprise needs.
Recently, however, some new technologies -- informally referred to as J2EZ -- have appeared, demonstrating that vendors are beginning to get the message. One of the first tools to deliver easier enterprise development is Sun's JSC (Java Studio Creator), which, although narrowly focused on the client-facing portion, provides conspicuous productivity benefits. IBM's Rational Developer and M7's NitroX offer similar functionality, but Sun's product has important distinguishing features.
A look back
Ever since computers became an integral part of commercial business activity, tool developers have sought to make programming easy. The earliest efforts, such as Cobol, pursued the goal of enabling end-users to write their own programs or at least to write the software to generate their own reports. When this proved impractical, vendors shifted toward tools that made programming easier for professional developers. High-level languages, CASE tools, code generators, scripting languages, and drag-and-drop programming were all part of this effort. Any ground gained by these tools, however, was soon lost to the complexity of new technologies. This pattern has been especially true of enterprise Java.
The client-facing portions of enterprise Java applications went from HTML to JSP and servlets, to Struts, and most recently to JSF (Java Server Faces) -- a standard approved last year by the JCP (Java Community Process). In theory, JSF provides an easier way of creating Web interfaces to Java applications. It has been warmly embraced by IBM, Oracle, Sun, and other Java vendors.
Sun's use of JSF is particularly evident in JSC, a tool that helps developers tie great Web interfaces to EJBs and databases. I examined the seventh update to the 2004Q2 version of JSC.
This release has a distinctly RAD (rapid application development) feel to it. Starting JSC puts you in a development environment that caters to interactive design of UIs. A central window supports drag-and-drop placement of components from a palette. A separate window (on the right) enables the developer to modify the properties of a component easily. A server pane presents various available database connections. By clicking one, you open metadata to reveal database fields you can connect to interface components -- again by dragging and dropping.
In the background, these actions are generating code. A single mouse click and the generated code is compiled and run on the included Java application server. This produces a true iterative prototyping cycle.
A step ahead
This functionality is a baseline that several products meet. JSC goes beyond it by adding consumable Web services and EJBs to the palette of components. This step is important, as it enables the easy creation of true enterprise applications that leverage existing software assets at your site. JSC reads and parses WSDL files and generates the needed Java code to access SOAP-based procedure calls. It also has nifty features such as e-mail functionality. (An upcoming release also supports visual design of portlets.)