NetBeans IDE upgrade readied for SOA

20.10.2006
Focusing on open source efforts, Sun Microsystems officials this week provided informational updates on the NetBeans IDE and GlassFish application server, noting that NetBeans will have an SOA bent and be extended for other languages besides Java.

Java, meanwhile, may have more staying power as a platform than as a language, a Sun official recognized.

The upcoming 5.5 release of the NetBeans open source IDE features enhancements for SOA and also moves beyond the Java realm with accommodations for C and C++ programming.

NetBeans 5.5 is in a beta test cycle now and is due out later this year. Authored by Sun Microsystems and the NetBeans community at large, the NetBeans platform rivals the higher profile Eclipse open source tools platform.

"We're happy with the healthy competition that exists between the two communities because we believe it spurs innovation and creates better tools for the Java ecosystem," said Dan Roberts, director of marketing for developer tools at Sun. Sun cites 11 million downloads of NetBeans since its inception in June 2000. Eclipse has noted download figures into the tens of millions, although Sun questions how that number was derived.

To boost orchestration of data in an SOA, NetBeans 5.5 will feature a set of visual XML tools to refactor XML so name changes can be propagated throughout an application. "It basically creates a visual hierarchical structure of your XML trees that are kind of comprehensible," Roberts said.

"When you're doing SOA, quite a large amount of your work is actually in mapping and orchestrating data exchanges between various applications," and this feature helps with that, Roberts said.

Also for SOA, BPEL (Business Process Execution Language for Web Services)-based orchestration is featured via technology gained through Sun's acquisition of SeeBeyond. "BPEL allows developers to actually create those orchestrations and express how those components talk to each other," Roberts said.

Version 5.5 features production-level support for C and C++. Supporting these languages in NetBeans is critical to the developing applications for mobile computing, according to Sun. "For our developers in the mobile space, they've really been asking for help and support for native coding," Roberts said. C and C++ tools can be used to build native code on Windows. Support for C and C++ compilers is featured as well as a basic debugger for these two programming languages.

Eclipse, for its part, has had support for C and C++ development.

Sun with NetBeans faces the challenge of Eclipse but has the backing of developers, said Shawn Willett, principal analyst at Current Analysis. "I would say this about NetBeans: It does have grassroots support among Java programmers," even if it has not had a lot of vendor buy-in, Willett said.

"It looks like they're putting in some pretty interesting and useful features in there," such as the BPEL and XML tools, Willett said.

JavaServer Faces (JSF) Web development is enhanced in NetBeans 5.5 with the Visual Web Pack, a visual tool for building Web applications. Visual Web Pack features technology from the Sun Java Studio Creator development tool.

Java specifications being supported in NetBeans 5.5 include several technologies featured in Java Enterprise Edition 5. These include: JavaServer Pages 2.1, for creating dynamic Web content; JSF 1.2; Servlet 2.5, for extending a Web server and accessing business systems, and the Java Persistence architecture for persisting objects in a database. Also featured is Web tier support for Struts, Spring, and other Web frameworks.

Concurrent with NetBeans 5.5, Sun will release the NetBeans Profiler, which examines an application for issues such as performance bottlenecks, race conditions, and thread locks.

NetBeans 6.0 is eyed for release in 2007. It will boast an improved editor as well as more JavaScript and AJAX support that is based on what is in Java Studio Creator. The Creator tool has extensive support for visual design and creation of Web applications that use AJAX-enabled components. "We're going to be extending that to NetBeans," Roberts said.

Sun during the next quarter also plans to talk about the governance and licensing model for the open sourcing of Java. Governance involves how the open source Java community will be formed and who can contribute. Under pressure from the community at large, Sun at the JavaOne conference in San Francisco in May announced intentions to offer Java under an open source format. The open sourcing is to be done in phases.

Recognizing the growing popularity of dynamic scripting languages, a Sun official acknowledged that the Java platform and its virtual machine format may outlast the Java language itself.

"We constantly think of the fact that Java as a language may go away," said Jeet Kaul, executive director of Java EE and App Platform Infrastructure at Sun. Sun currently is looking at support for dynamic languages that have become popular.

"If these languages get more traction, we will have more support for them," Kaul said.

"The platform, the virtual machine stuff, will be around and we will do other languages," Kaul said. "The demise of the platform is greatly exaggerated."

Running other languages with the Java platform is nothing new, Willett said.

"That's been a trend from the very beginning, of accommodating other languages, running other languages on Java application servers, and it'll probably continue," Willett said.

Sun also has set forth a road map for its open source GlassFish application server, which has served as a reference implementation of Java EE 5. Due in the first quarter of 2007, version 2 of GlassFish will feature a new Web services stack and enhancements in the area of performance and startup time. Also included will be load balancing, cluster management, and failover capabilities as well as some support for scripting.

The Web services stack will boast interoperability with Microsoft's .Net platform and with WS-* specifications such as WS-Addressing. Planned scripting support will include some levels of backing for the jMaki (https://ajax.dev.java.net/) and Phobos (https://phobos.dev.java.net/) projects. JMaki is a mechanism for identifying and defining tags for AJAX components, such as a drag-and-drop tag. Phobos is a lightweight Web application environment that utilizes scripting.

Version 3 of GlassFish, expected in late 2007 will feature larger architectural changes, high availability, more modularization, and better scripting, including expanded support for Phobos.

Sun in December plans to ship release 5 of its Java Enterprise System network services and software stack. It features upgraded versions of a variety of Sun software products including Sun's portal, access, and directory servers. Sun's Web server also is included.