Put to the Test: BEA Delivers a 'Best-of-Hybrid' Development EnvironmentPut to the Test: BEA Delivers a 'Best-of-Hybrid' Development Environment

Workshop for WebLogic Platform 9.2 makes Eclipse more approachable, surrounding it with well-chosen libraries and development functionality.

information Staff, Contributor

November 21, 2006

7 Min Read
information logo in a gray background | information

PROS

• A well-thought-out augmentation of the Eclipse IDE with Apache Beehive and various BEA-originated components.

• Particularly strong in deployment and management characteristics.

CONS

• In enterprise environments, the relatively weak data-oriented features and lack of modeling or architectural design (such as UML) may be a drawback.

This article was previously published online in a different format

Some vendor pledges of allegiance to Eclipse--and with it, Java programming and open-source software--seem to be exercises in calibrated spin. This is especially true in enterprise software development. That's why it's encouraging to see that BEA Systems "walks the talk" with Workshop for WebLogic Platform 9.2.

BEA has used keen judgment in sorting through the Java world's bountiful options (a veritable alphabet soup of technologies) to produce an Eclipse-based IDE that nonexpert Java developers will find easy to use and experienced Java programmers will find flexible. It works across a broad range of projects (J2EE Web apps, Web services, J2EE components) and, of course, is well-integrated with BEA products (application server, portal manager, SOA management). Although a work in progress (as is Eclipse), Workshop for WebLogic is a candidate for best-of-breed (or more accurately, best-of-hybrid) in Java development environments.

For enterprise developers using BEA Workshop, this version is a considerable change. Not only is the shell of the IDE based on Eclipse 3.1, some familiar BEA tools and controls are replaced by the Eclipse Web Tools Platform and elements of the Apache Beehive Framework. Overall, this is a major step forward, offering a greater range of development capability, but individual features will be missed and new capabilities must be mastered.

MAKING THE MOST OF ECLIPSE

Although often associated with IBM, the Eclipse movement (now Eclipse Foundation) has many participants, with BEA one of the most active. BEA's support for Eclipse represents a risk and an opportunity. It's a risk because of the presence of IBM. It's an opportunity because of what BEA believes can be done with Eclipse and, indeed, has now demonstrated with Workshop for WebLogic.

Simply put, Eclipse is an open-source Java software development environment that provides a basic programmer's workbench, runtime features, help system and a framework supporting a plug-in model. This model is most important because it is the main route to enhancing and extending Eclipse. BEA uses plug-ins to make strategic selections of open-source software, Apache Beehive being the most notable, and to repackage a large number of BEA-developed features.

Previous versions of BEA Workshop were noted for their ease of use and support of nonexpert programmers. By using Eclipse plug-ins, BEA retains the novice-friendly environment while offering more advanced developers a pathway to close-to-the-metal Eclipse. This is a difficult balance and BEA's success gives it a competitive edge.

GETTING STARTED

An installation of Workshop for WebLogic unloads a lot of software: Eclipse, Apache Beehive, BEA's Workshop software, BEA WebLogic Application Server 9.2, BEA WebLogic Portal. It all happened very quickly and successfully in my case. The Workshop environment and the WebLogic server each need at least 1 GB of RAM, which may lead some shops to use test app servers separated from development machines. This may be especially true where the relationship to the WebLogic app server needs specific tuning. As a test, I converted a Webified app for amateur weather stations into a Web services application, which required some demanding communications and session management at the app server.

The documentation is massive and comes from many sources: BEA, Eclipse, Apache (et al). Thankfully, BEA has done a good job of providing overviews, tutorials and other support to help organize it all.

Within the larger framework of Eclipse, which handles the basics of a development environment, BEA Workshop pulls in other frameworks, particularly the Apache Beehive Framework, which itself is based on Struts. It takes a while to visualize the relationships between framework components, but BEA's implementation is such that when you do, it makes sense and, more important, seems right.

BEA has worked hard to walk the line between appropriate hand-holding and providing a sense of freedom. By that I mean it has simplified development by providing frameworks to organize components, templates and other shortcuts for common routines, with plenty of automatic generation of standard code. Although it's possible for a novice Java programmer to stumble in the process, it shouldn't take long to figure out how the IDE is organized and where to get things done.

Beehive plays an important role in the IDE, providing a library of Beehive Controls (using annotated JavaBeans) that can be augmented with POJO (Plain Old Java Object) controls. Beehive also provides tools for Java Server Pages (JSP), Java Server Faces (JSF) and a Page Flow controller, the last being crucial for working with Web apps (and often Web services).

COUNTING ON SOA AND WEB 2.0

BEA is staking much of its corporate identity (and future) on service-oriented architecture (SOA), so it isn't surprising that Workshop has excellent tools, based on the latest standards, for producing Web services. The various pieces of value-added programming BEA has put on top of JSR-181 are extremely useful, and they include support for asynchronous callbacks, state management with conversations, a Web-services test browser, messaging with JMS, and security features such as WS-Reliability, WS-Security/WS-Policy and digital signatures.

BEA also is laying the groundwork for Ajax support in future versions by working with companies such as Backbase (an Ajax specialist), but there's not much visible in this version of Workshop. Like most conventional Web app IDEs, the transition to Web 2.0 techniques is likely to be a major headache because of the need to integrate intensive use of JavaScript in an all-Java IDE, but hopefully only BEA's designers will feel the pain.

DEBUGGING AND DEPLOYMENT

For the most part, debugging is the domain of Eclipse, particularly JDT Debug. From the IDE, debugging has common features, such as stepping, breakpoints and evaluation. Syntax checking, test runtime modes and testing harnesses for Java are well- developed, but the heterogeneous nature of Java implementations makes remote debugging difficult (compared with, say, Microsoft's debugging tools in .Net). Because Workshop for WebLogic is designed for a BEA environment, both deployment and debugging are more consistent and reliable.

Anyone who has used a major IDE product will find the BEA-Eclipse-Beehive environment comfortable. If there is an area where it is not particularly supportive, it's with data-driven programming. This is not a database-oriented environment, and the tools (controls) for accessing data as well as orchestrating data manipulation are not well-coordinated.

STAYING FOCUSED

Although BEA doesn't have the product reach of an IBM or an Oracle, within the last year or two the company has pointed its products in one direction: SOA. These products are becoming a small but complementary family: WebLogic Portal, WebLogic Server, AquaLogic (Enterprise Server Bus), served by Workshop development products. BEA Workshop products have a developer community large enough for critical mass in the Dev2Dev forum, Discussion Forums and Development Blogs.

A question often asked in the Java community these days is, "Since Eclipse tools are so good (and free), why do we need one company's IDE?" The answer is in BEA Workshop for WebLogic 9.2. For the expert Java programmer, Eclipse source code may be all that's needed. For everybody else, making Eclipse more approachable and surrounding it with good choices in libraries, and other functionality, increases the range and productivity of Eclipse. For enterprise shops in which not every developer is an expert, BEA Workshop for WebLogic stands out as a top choice.

n Workshop for WebLogic Platform 9.2 Developer licenses are free, but deployment may require purchase of BEA WebLogic Server, BEA WebLogic Portal and/or BEA JRockit.

Nelson King is a 25-year veteran of the coding wars. He has written nine books on application development, and his tool evaluations are widely published.

Read more about:

20062006
Never Miss a Beat: Get a snapshot of the issues affecting the IT industry straight to your inbox.

You May Also Like


More Insights