On August 15th, Sun Microsystems announced updates to Sun ONE Studio (formerly Forte for Java) and NetBeansTM, the open source platform on which the Sun ONE Studio IDE is based. The NetBeans open source project (www.netbeans.org) has added 18 new modules to its open source code base. The NetBeans open source Platform and IDE run on any operating system, including Linux, with a JavaTM 2 compatible Java Virtual Machine (JVM).
The new modules significantly increase the range of Java technologies supported in the NetBeans environment. They enable developers, including Linux developers, to more rapidly create code with increased reliability, and leverage innovative technologies such as Java Data Object (JDO) and Apache Struts. The addition of these modules was expedited by a new module contribution process (http://contrib.netbeans.org) that enables any community member to upload a contribution and make it immediately available to the NetBeans community.
Sun also announced today the Native Connector Tool for Linux, a specification and set of libraries and wizards in the SunTM ONE Studio, Enterprise Edition products. The Native Connector Tool for Linux enables Linux developers to extend applications as Web services. Customers can use the new Native Connector Tool to easily bind and encapsulate native Linux C/C++ applications and libraries as Java classes or XML-based services. The Native Connector Tool for Linux supports the JavaTM 2 Platform, Enterprise Edition (J2EE(TM) Connector Architecture (JCA) specification, simplifying the integration of diverse enterprise information systems.
“We welcome these new additions to the NetBeans code base,” said Peter Young, vice president and general manager, Sun ONE Studio Tools, Sun Microsystems. “NetBeans and Linux share the belief that an open source community is the best path to innovation, and the rapid addition of functionality in the form of the new modules announced today affirms this belief. The Native Connector Tool will facilitate further innovation by Linux Developers working to create Web services by enabling the integration of their existing C/C++ code.”
The NetBeans Lookup Library
The NetBeans Lookup Library was also announced on the 15th and is available for download immediately at http://openide.netbeans.org/lookup. It can be used independently of the NetBeans Platform or IDE. It provides a simple, powerful solution for developers addressing issues common to modular applications. Often developers write an application divided into several independent modules (.jar files) that are being developed and deployed independently, requiring registration and discovery of the various components.
The NetBeans Lookup Library addresses this challenge by easing the registry of different components and making them visible to other elements in the system, and by enabling independent modules to communicate with one another. In addition, the Lookup Library enables “pseudo-multiple inheritance,” allowing a component that implements the Lookup interface to dynamically change functionality as the application context changes.
The NetBeans Platform and IDE use the Lookup Library specifically to enable plug-in modules to install new objects, such as compilers, that need to be found by the common infrastructure that supports them. After retrieving the result, the client can attach a “listener” and be notified when the result of the lookup has changed. In addition to this specific application, the Lookup Library is useful in almost any situation where loose coupling and encapsulations are desirable. The Lookup Library includes an AbstractLookup class and a number of other interface implementations that make it easy to get started quickly.
New NetBeans Modules
The NetBeans IDE enables application developers to write, compile, debug and deploy programs. A free product with no usage restrictions, NetBeans is written in Java but can support any programming language. The NetBeans Platform is an application runtime that automates common development tasks like menus and document management. It enables developers to concentrate on the most critical and strategic parts of an application, the business logic that makes that application unique. The resulting savings in time and effort translate into dramatic developer productivity gains. Sun ONE Studio is Sun’s commercial distribution of the NetBeans IDE, encompassing the NetBeans code plus additional modules.
Because the NetBeans Platform and IDE are built on a common, publicly available code base, developers also benefit from the continuing enhancements and reliability inherent in the open source model. Its modular architecture and open application programming interfaces (APIs) enable third parties to extend or integrate with the NetBeans Platform and IDE to add new functionality.
The new NetBeans modules have been contributed by members of the open source community and have been accepted for inclusion into the NetBeans code base. The modules streamline Java application development and comprise a range of functionality. A full list of the 18 new modules, which are available immediately, can be found at www.netbeans.org.
Among the 18 new modules are:
- Java Data Objects (JDO) support — support for JDO, a Java technology for mapping entities in relational databases to Java objects, making it easy for developers experienced in object-oriented design, but not database programming, to quickly build client-server applications in a paradigm that leverages their existing skills.
- Struts support — support for the Apache Struts framework, a technology built on top of JavaServer Pages(TM) (JSP(TM)), enhances productivity for Web application developers.
- Java 3D(TM) support — a toolset for developing Java 3D scene graphs, enabling the rapid delivery of cross-platform, high quality graphical applications.
- Support Interface Module (SIM) and BugSubmitter module — the SIM creates a common infrastructure that enables vendors of different modules to provide customized support directly from the NetBeans Platform or IDE’s user interface. The BugSubmitter module leverages the SIM to enable users, from within the NetBeans IDE, to submit requests for new functionality and report any issues encountered.
- Audit module — allows a development team to create and tune rules that define the best practices for their development and stop problems that a compiler or debugger will not catch, before they find their way into production code.
- Metrics module — permits simple to sophisticated analysis of source code to give developers and management a clear assessment of the state of a project at any given time.
- XTest support — a set of automated tools to easily provide performance and API compatibility tests, which an organization can use to automatically assess the performance of a system under development relative to past benchmarks.
The NetBeans.org community site serves as the coordination point for the development and testing of the NetBeans Platform and IDE by providing discussion forums, software engineering tools, certified releases, mailing lists, issue tracking and version control. CollabNet, a leading provider of collaborative software development solutions based on open source concepts, provides the infrastructure for NetBeans.org.